黑盒测试用例设计方法之等价类划分

来源:互联网 发布:八度网络面试 编辑:程序博客网 时间:2024/05/16 05:31
1.等价类划分法
概念:把程序的<strong>输入域</strong>划分成若干子集,然后从每个子集中选取少数有代表性数据作为测试用例,每个子集的代表性数据在测试中的作用等价于该集合中的其他值。
等价类分为有效等价类(对于程序的规格说明来说是合理的、有意义的输入构成的集合,可以检验程序是否实现了规格书明中规定的功能和性能)和无效等价类(与有效等价类相反)。
划分等价类的原则:
(1)在输入条件确定了取值范围的情况下可以确定一个有效等价类和两个无效等价类,例如:1&lt;x&lt;5,有效等价类是1&lt;x&lt;5,无效等价类是x&lt;1和x&gt;5。
(2)在输入条件确定了输入集合或者规定了“必须。。。”条件的情况下,可以确定一个有效等价类和一个无效等价类。
(3)在输入条件是一个布尔量的时候,可以确定一个有效等价类(true)和一个无效等价类(false)。
(4)当输入规定了一组值,有n个,程序要对每个值分别进行处理的情况下,可以确定n个有效等价类和一个无效等价类,例如:输入值为英文、中文、韩文,分别取这三个值作为有效等价类,将除了这三种值之外的所有值作为一个无效等价类。
(5)当规定了输入数据必须遵守的规则时,可以确定一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。
(6)在已划分的等价类中存在某些元素在程序中处理方式不同的情况下,应该继续划分等价类。
将等价类转化为测试用例:
(1)按照输入条件、有效等价类、无效等价类建立等价类表,列出所有划分出的等价类。
(2)位每一个等价类规定一个唯一的标号。
(3)设计测试用例,使其覆盖尽可能多的未被覆盖的有效等价类,重复这一步骤,直到所有有效等价类都被覆盖到。
(4)设计测试用例,使其覆盖未被覆盖的无效等价类,每个测试用例仅覆盖一个无效等价类,重复这一步骤,直到覆盖所有无效等价类。
参考例子:三角形问题
0 0
原创粉丝点击