测试岗笔记一(目的,策略,流程,框架)

1测试的目的是什么

正向思维出发点: 测试目标产品是否达到预期的结果。
使自己确信产品是能够正常工作的评价一个程序和系统的特性或能力,并确定它是否达到期望的结果,软件测试就是以此为目的的任何行为。
反向思维出发点: 为了发现错误。
测试试是为发现错误而执行一个程序或者系统的过程,测试是为了证明程序有错,而不是证明程序无错误,一个好的测试用例在于它能发现以前未发现的错误,一个成功的测试是发现了以前未发现的错误的测试。

2测试的策略(方法)有哪些(测试的思想)

2.1 黑盒测试、白盒测试、灰盒测试

2.1.1 黑盒测试

盒测试概念

黑盒测试: 出发点是用户需求。黑盒测试是指不基于内部设计和代码的任何知识,而基于需求和功能性的测试,黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。在测试时,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下。测试者在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息(如数据库或文件)的完整性。

黑盒测试的检查点:

●根据需求规格说明书,检查是否有不正确或遗漏了的功能?是否忽略了用户的隐含需求?
●在软件外部接口上,输入能否正确地被接受?能否输出正确的结果?
●是否有数据结构错误或外部信息(例如数据文件)访问错误?
●性能上是否能够满足要求
●是否有初始化或终止性缺陷?是否会出现用户不能接受的缺陷?
●易用性和其他功能特性是否能够得到满足?

黑盒测试的优点:

① 与软件具体实现无关,如果软件实现发生了变化,测试用例仍可用;

② 设计黑盒测试用例可以和软件实现同时进行,因此可压缩项目总开发时间。

黑盒测试常用方法

等价类划分
  完全不考虑程序的内部结构,只根据程序规格说明书对输入范围进行划分,把所有可能的输入数据,即程序输入域划分为若干个互不相交的子集,称为等价类,然后从每个等价类中选取少数具有代表性的数据作为测试用例,进行测试。
  划分原则:区间、数值、数值集合、限制条件或规则、细分等价类

边界值分析
  边界值和等价类密切相关,输入等价类和输出等价类的边界是要着重测试的边界情况。在等价类的划分过程中产生了许多等价类边界。边界是最容易出错的地方,所以,从等价类中选取测试数据时应该关注边界值。

在等价类划分基础上进行边界值分析测试的基本思想是,选取正好等于、刚刚大于或刚刚小于等价类边界的值作为测试数据,而不是选取等价类中的典型值或任意值做为测试数据。

对于一个n变量的程序,边界值分析测试会产生4n+1个测试用例。
  
 因果图
(1)确定软件规格中的原因和结果。分析规格说明中哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。

(2)确定原因和结果之间的逻辑关系。分析软件规格说明中的语义,找出原因与结果之间、原因与原因之间对应的关系,根据这些关系画出因果图。

(3)确定因果图中的各个约束。由于语法或环境的限制,有些原因与原因之间、原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号表明约束或限制条件。

(4)把因果图转换为决策表。

(5)根据决策表设计测试用例。

决策表分析 
  在所有的黑盒测试方法中,基于决策表的测试是最严格,最具有逻辑性的测试方法。

决策表是把作为条件的所有输入的各种组合值以及对应输出值都罗列出来而形成的表格。

它能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。因此,利用决策表能够设计出完整的测试用例集合。
 步骤:
(1)列出所有的条件桩和动作桩。

(2)确定规则的个数。

(3)填入条件项。

(4)填入动作项,得到初始决策表。

(5)简化决策表,合并相似规则。

对于n个条件的决策表,相应有2n个规则

决策表合并原则:即若表中有两条以上规则具有相同的动作,并且在条件项之间存在极为相似的关系,便可以合并。

2.1.2 白盒测试

白盒测试: 出发点是程序实现。也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能。

基本覆盖标准:逻辑驱动、循环、基路测试等,主要用于软件验证。

“白盒”法全面了解程序内部逻辑结构、对所有逻辑路径进行测试。

“白盒”法是穷举路径测试。在使用这一方案时,测试者必须检查程序的内部结构,从检查程序的逻辑着手,得出测试数据。贯穿程序的独立路径数是天文数字。但即使每条路径都测试了仍然可能有错误。

原因:

第一,穷举路径测试决不能查出程序违反了设计规范,即程序本身是个错误的程序。

第二,穷举路径测试不可能查出程序中因遗漏路径而出错。

第三,穷举路径测试可能发现不了一些与数据相关的错误。

白盒测试的检查点:

●对程序模块的所有独立的执行路径至少测试一次
●对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测试一次
●在循环的边界和运行界限内执行循环体
●测试内部数据结构的有效性,等等。

白盒测试常用方法

语句覆盖

判定覆盖

条件覆盖

判定/条件覆盖

条件组合覆盖

路径覆盖

2.1.3 灰盒测试

**灰盒测试:**灰盒是一种程序或系统上的工作过程被局部认知的装置。灰盒测试测试,也称作灰盒分析,是基于对程序内部细节有限认知上的软件调试方法。

灰盒测试由方法和工具组成,这些方法和工具取材于应用程序的内部知识和与之交互的环境,能够用于黑盒测试以增强测试效率、错误发现和错误分析的效率。它是介于白盒测试与黑盒测试之间的,灰盒测试关注输出对于输入的正确性,同时也关注内部表现,但这种关注不象白盒那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态,有时候输出是正确的,但内部其实已经错误了,这种情况非常多,如果每次都通过白盒测试来操作,效率会很低,因此需要采取这样的一种灰盒的方法。

灰盒测试的好处:

测试者可能知道系统组件之间是如何互相作用的,但缺乏对内部程序功能和运作的详细了解。对于内部过程,灰盒测试把程序看作一个必须从外面进行分析的黑盒。灰盒测试通常与web服务应用一起使用,因为尽管应用程序复杂多变,并不断发展进步,因特网仍可以提供相对稳定的接口。由于不需要测试者接触源代码,因此灰盒测试不存在侵略性和偏见。开发者和测试者间有明显的区别,人事冲突的风险减到最小。

目的:

一、确认软件的质量

二、提供信息,提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。

三、软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。

测试任务:

1、寻找Bug;

2、避免软件开发过程中的缺陷;

3、衡量软件的品质;

4、关注用户的需求。
在这里插入图片描述

2.2静态测试,动态测试

**静态测试:**不运行被测试的软件系统, 而是采用其他手段和技术对被测试软件进行检测的一种测试技术。(代码走读、文档评审、程序分析等) 。

·静态测试常用技术——静态分析技术:
1.定义:一种不通过执行程序而分析程序执行的技术。
2.功能:检查软件的表示和描述是否一致, 没有冲突或者没有歧义, 它描述的是纠正软件系统的描述、表示和规格上的错误,因此是任何进一步测试执行的前提。

主要有三种不同的程序测试可能性:
a)考虑程序是否满足编码规则,语法上是否具有一致性和完整性;

b)考虑文档描述是否规范、准确、便于查阅;

c)考虑程序和文档之间的一致性。

手工静态分析 (最重要的手工技术是同行评审 (对象:计划、需求文档、 设计图、代码等)):

根据同行评审形式正规的程度分为:

a)正规检视:以某个方案的裁决为目的,形式比较严格,有固定的流程,多用于文档的评 审;

b)技术评审:以某个方案的裁决为目的,一般由企业高层技术人员和管理人员参 与;

c)走查:以发现软件产品中的缺陷为目的,没有严格规定,比较随意。

动态测试:
按照预先设计的数据和步骤去运行被测软件系统, 从而对被测软件系统进行检测的一种技术。

·动态测试常用技术——动态分析技术:

定义:对软件系统运行行为进行分析, 包含程序在受控的环境下使用特定的输入进行正式的运行,和期望的结果比较以检查系统运行是正确还是不正确。

常用的动态分析技术: 路径测试 分支测试 性能测试

手动测试和自动测试

参考链接
**什么是手动测试?**手动测试是其由QA分析师手动执行对软件的测试。执行此操作是为了发现正在开发的软件中的错误。
在手动测试中,测试人员将检查给定应用程序或软件的所有基本功能。在此过程中,软件测试人员无需任何自动化测试工具即可执行测试用例并生成测试报告。

它是所有测试类型的经典方法,可帮助发现软件系统中的错误。通常由经验丰富的测试人员执行,以完成软件测试过程。

什么是自动化测试?
在软件自动化测试中,测试人员编写代码/测试脚本以自动执行测试。测试人员使用适当的自动化工具来开发测试脚本并验证软件。目标是在更短的时间内完成测试执行。

自动化测试完全依赖预先编写的测试脚本,该测试脚本会自动运行以将实际结果与预期结果进行比较。这有助于测试人员确定应用程序是否按预期执行。

自动化测试允许您执行重复性任务和回归测试,而无需人工测试人员的干预。即使所有过程都是自动执行的,自动化也需要一些人工来创建初始测试脚本。

冒烟测试

冒烟测试(也称为 健全性 检查):一种简单的集成测试,我们只检查被测系统被调用时,它会正常返回并且不会崩溃。

回归测试

修复错误后编写的测试。它确保不会再次发生此特定的错误。全名是“非回归测试”。也可以是在更改应用程序之前进行的测试,以确保应用程序提供相同的结果。

公测(Beta测试的策略)

公测就是公开测试,封闭测试时参与人数较少,账号较难得,而且出现的BUG一般较多,数据一般不予保留。而公测一般是在内测数月后,游戏的BUG经过内测,已明显减少,允许玩家注册账号,数据予以保留,公测数月后进入正式运营。

3测试的流程

测试流程
测试流程

软件测试流程一般分为按照以下五个阶段进行:
**一、测试需求分析阶段:**阅读需求,理解需求,与客户、开发、架构多方交流,深入的了解业务,分析需求点,并要参与需求评审会议。

**二、测试计划阶段:**主要任务就是编写测试计划,参考软件需求规格说明书,项目总体计划,内容包括测试范围(来自需求文档),进度安排,人力物力的分配,整体测试策略的制定。风险评估与规避措施有一个制定。

**三、测试设计阶段:**根据测试计划、任务分配、功能点划分,设计合理的测试用例,在设计过程中会参考需求文档(原型图),概要设计,详细设计等文档,用例编写完成之后会进行评审。

四、测试执行阶段:
1、搭建环境,执行冒烟测试(预测试)-然后进入正式测试,根据测试用例的详细步骤,执行测试用例执行结果记录和bug记录:
2、对每个case记录测试的结果,有bug的在测试管理工具中编写bug记录。要求追踪leader分配给你追踪的bug.直到 bug fixed。
3、测试日报测试人员对每天测试项目发送测试报告(若无要求,则不需要发送日报)日报所含内容:
(1)对当前测试版本质量进行分级
(2)严重阻塞进度的问题提出,提示开发同学优先修改
(3)对版本整体测试进度进行评估
(4)产品上线前,测试发送测试报告

**五、测试评估阶段:**通过不断测试、追踪,直到被测软件达到测试需求要求,并没有重大bug. 出测试报告,可以上线,否则终止上线。

4测试技术框架

在这里插入图片描述
图片来源

参考链接

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值