系列文章目录
文章目录
- 系列文章目录
- 前言
- 第二章 黑盒测试
- 2.1 等价类划分
- 2.2 边界值分析
- 2.3 因果图法
- 2.4 判定表驱动
- 2.5 正交试验法
- 2.6 其他黑盒测试方法
- 2.7 功能性测试总结
- 总结
前言
第二章 黑盒测试
- 黑盒测试:功能测试或数据驱动测试
- 测试对象:需求规格说明书和用户手册
- 动态黑盒测试分类:
- 功能测试:等价类划分、边界值分析、因果图、错误推测、判定表、功能图法
- 非功能测试:性能测试、强度测试、兼容性测试、配置测试、安全性测试
2.1 等价类划分
- 方法简介
- 根据等价关系对输入数据或输出数据的集合进行划分
- 对揭露系统中的缺陷来说,子集中的每个输入条件是等效的
- 从每个子集中选取少数代表性的数据做为测试用例
- 将集合划分为互不相交(无冗余性)的子集,且这些子集的并是整个集合(完备性)
- 划分等价类
-
等价类划分包括两种情况:
- 有效等价类:是指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合
- 无效等价类:是指对于程序规格说明来说,是不合理的、无意义的输入数据构成的集合
-
等价类的划分原则:
- 按区间划分:如果可能的输入数据属于一个取值范围或规定了取值个数,则可以确定1个有效等价类和2个无效等价类
- 按数值划分:如果规定了输入数据的一组值,且程序对于每个值分别进行处理,则可为每一个输入值确立1个有效等价类,为这组值确立1个无效等价类
- 按输入集合划分:如果规定了输入值的集合,则可以确定1个有效等价类和1个无效等价类
- 按限制条件划分:如果输入条件是一个布尔量时,可确立1个有效等价类和1个无效等价类
- 按限制规则划分:如果规定了输入数据必须遵守的规则,可确立1个有效等价类和若干个无效等价类
- 按处理方式划分:在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,应将该等价类进一步划分
-
确立等价类后,建立等价类表
-
再从划分出的等价类中选择测试用例
- 确定测试用例
- 选择测试用例的原则:
- 为每一个等价类规定一个唯一的编号
- 设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类;重复这一步骤,直到所有的有效等价类都被覆盖为止
- 设计一个新的测试用例,使其仅覆盖一个无效等价类,重复这一步骤,直到所有的无效等价类都被覆盖为止
- 应用实例PPT
- 传统等价类测试存在的问题
- 规格说明往往没有定义无效测试用例的期望输出应该是什么样的。因此,测试人员需要花费大量时间来定义这些测试用例的期望输出
- 在“合理分类”基础上,未实现“精心挑选”
- 强类型语言、图形化用户界面没有必要考虑过多无效输入
- 适合处理输入条件相互独立的情况,若存在联系则很难描述,且测试效果无法保障
- 等价类划分方法分类
- 弱一般等价类
- 单缺陷原则:缺陷极少是由两个或多个缺陷的同时发生引起的
- 遵循单缺陷原则,要求用例覆盖每一个变量的一种取值即可,取值为有效值
- 两变量x1, x2的函数
- a≤x1≤d, 区间 [a, b), [b, c), [c, d]
- e≤x2≤g, 区间 [e, f), [f, g]