超适合新手的黑盒测试用例设计方法

等价类划分法1.1概念
等价类划分法就是把程序的输入域划分成若干个部分(子集),然后从每个部分中选取少数代表性数据作为测试用例 。每一类的代表性数据在测试中的作用等价于这一类中的其他值 。
1.2应用
等价类是指某个输入域的子集合 。等价类划分可有两种不同的情况:有效等价类和无效等价类 。
有效等价类:对程序规格有意义、合理地输入数据集合,程序接收到有效等价类数据,可以正确执行、计算 。
无效等价类:对程序规格无意义、不合理地输入数据集合,程序接收到无效等价类数据,应该给出错误提示,或者根本不让用户输入 。
设计测试用例时,要同时考虑这两种等价类,因为,软件不仅要能接收合理的数据,也要能经受意外的考验 。这样的测试才能确保软件具有更高的可靠性 。
1.3等价类划分实例
某程序规定:"输入三个整数 a 、 b 、 c 分别作为三边的边长构成三角形 。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … " 。用等价类划分方法为该程序进行测试用例设计 。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂 。)
分析题目中给出的和隐含的对输入条件的要求:
(1)整数 (2)三个数 (3)非零数 (4)正数
(5)两边之和大于第三边 (6)等腰 (7)等边
如果 a 、 b 、 c 满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:
1)如果不满足条件(5),则程序输出为 " 非三角形 "。
2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 "。
3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 "。
【超适合新手的黑盒测试用例设计方法】4)如果三条边都不相等,则程序输出为 " 一般三角形 "。
列出等价类表并编号

超适合新手的黑盒测试用例设计方法

文章插图
 
覆盖有效等价类的测试用例:
a b c 覆盖等价类号码
3 4 5 (1)–(7)
4 4 5 (1)–(7),(8)
4 5 5 (1)–(7),(9)
5 4 5 (1)–(7),(10)
4 4 4 (1)–(7),(11)
覆盖无效等价类的测试用例:
超适合新手的黑盒测试用例设计方法

文章插图
 
边界值分析法概念
边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法 。所谓边界条件,是指输入和输出等价类中那些恰好处于边界、或超过边界、或在边界以下的状态 。
应用
采用边界值分析测试的基本思想是:故障往往出现在输入变量的边界值附近 。
通常情况下,软件测试所包含的边界检验有几种类型:
数字、字符、位置、质量、大小、速度、方位、尺寸、空间等
相应地,以上类型的边界值应该在:
最大/最小、首位/末位、上/下、最快/最慢、最高/最低、最短/最长、 空/满等情况下。
边界值分析法与等价类分析法的区别:
1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件 。
2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况 。
例:测试计算平方根的函数
–输入:实数
–输出:实数
–需求说明:当输入一个0或比0大的数的时候,返回其正平方根;当输入一个小于0的数时,显示错误信息"平方根非法-输入值小于0"并返回0;库函数Print-Line可以用来输出错误信息 。
A.等价类划分:
I.可以考虑作出如下划分:
a、输入 (i)<0 和 (ii)>=0
b、输出 (a)>=0 和 (b) Error
II.测试用例有两个:
a、输入4,输出2 。对应于 (ii) 和 (a)。
b、输入-10,输出0和错误提示 。对应于 (i) 和 (b)。
B.边界值分析:
划分(ii)的边界为0和最大正实数;划分(i)的边界为最小负实数和0 。由此得到以下测试用例:
a、输入 {最小负实数}
b、输入 {绝对值很小的负数}
c、输入 0
d、输入 {绝对值很小的正数}
e、输入 {最大正实数}
注:能用边界值测试的时候,一般都可以用等价值测试 。
错误推断法概念
基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法 。


推荐阅读