等价类的划分思想:将程序的输入域划分为若干个区域(等价类),并在每个等价类中选择一个具有代表性的元素生成测试用例。

1. 划分等价类

1.1 有效等价类和无效等价类

有效等价类是指对程序来说,合理、有意义的输入数据等构成的集合。无效等价类是指对程序来说是不合理的或无意义的输入数据所构成的集合。设计测试用例时,要同时考虑这两种等价类。

1.2 等价类的划分原则

1)若输入条件规定了取值范围和值的个数的情况下,可划分为一个有效等价类和两个无效等价类;Eg.输入数据区间范围在[-500,500],则-500<=X<=500为有效等价类,无效等价类为X<-500和X>500

2)若输入条件为布尔表达式,则可划分为一真一假的有效等价类和无效等价类;Eg.一个输入框为必填项,则填写为有效等价类,不填写为无效等价类。

3)若规定了输入数据必须遵循的原则,则可划分为一个有效等价类和若干个无效等价类;Eg.某系统的某个输入框只允许输入数字。则输入数字可被划分为有效等价类,无效等价类为:输入字母,输入中文,输入符号…

4)若只要求输入数据符合某几个原则,这时就可能存在多个有效等价类和多个无效等价类;Eg.有一些系统的密码设置有以下限制,只能输入数字,字母以及部分特殊符号。则有效等价类为:输入数字,输入字母,输入部分特殊符号。无效等价类为:输入汉字、输入单引号…

5)若规定了输入数据的一组值(假设有N个),且程序对不同输入值做不同处理,则可以划分为N个有效等价类和一个无效等价类(所有不允许的输入值的集合)

2. 测试用例设计用例步骤

1)根据输入条件,确认等价类,包括有效等价类和无效等价类,建立等价类列表

2)设计一个测试用例的时候,使其尽可能多的覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类被覆盖完为止

3)设计一个测试用例,使其尽可能多的覆盖尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类被覆盖完为止

更多推荐