第三章 黑盒测试
等价类划分
1.划分等价类:把数目极多的输入情况划分成若干个等价类
如果用集合中的一个输入条件作为测试数据进行测试不能发现程序中的错误,那么使用集合中的其他输入条件进行测试也不可能发现错误
有效等价类vs无效等价类
有效等价类可以是一个,可以是多个
(1)如果输入条件规定了取值范围或值的个数,则可确定一个有效等价类和两个无效等价类。
(2)输入条件规定了输入值的集合,或是规定了“必须如何”的条件,则可确定一个有效等价类和一个无效等价类。
(3)如果我们确知,已划分的等价类中各元素在程序中的处理方式是不同的,则应将此等价类进一步划分成更小的等价类。
无效等价类至少是一个,可能有多个
2.确定测试用例
Eg:某程序规定:输入三个整数作为作为三边的边长构成三角形,当此三角形为一般三角形、等腰三角形及等边三角形时,分别做计算……。试用等价类划分方法为该程序的构成三角形部分进行测试用例设计。
(1)列出等价类表:
(2)列出覆盖上述等价类的测试用例
(3)列出覆盖无效等价类的测试用例
因果图
1.导出测试用例的步骤:分析原因和结果->画因果图(标明约束条件)->转换成判定表->写测试用例
2.因果关系
因果关系的基本符号:
(1)恒等:若c1是1,则e1也是1;否则e1为0
(2)非:若c1是1,则e1是0;否则e1是1
(3)或:若c1或c2或c3是1,则e1是1;否则e1为0。“或”可有任意个输入
(4)与:若c1和c2都是1,则e1为1;否则e1为0。“与”也可有任意个输入
3.输入和输出条件的约束
约束符号: