一.什么是等价类划分
1、等价类划分法是一种重要的、常用的黑盒测试方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。
2、说明:把所有可能的输入数据,即程序的输入划分成若干部分(子集),然后从每一个子集中选取少量具有代表性的数据作为测试用例。
3、原因:需要有大量数据测试输入,不可能实现穷举测试。可以从大量的可能数据中选取一部分具有代表性的数据作为测试用例。
效果:经过类别划分后,每一类的代表性数据在测试中的作用都等价于这一类中的其他值。
4、手段:在设计测试用例时,在需求说明的基础上划分等价类,列出等价表,从而确定测试用例。
5、等价类划分法设计测试用例要经历2个步骤:
-划分等价类(列出等价类表)
-选取测试用例
6、等价类的划分有2种不同的情况:
-有效等价类:由那些对程序的需求说明中有意义的、合理的输入数据所构成的集合。
-无效等价类:有那些不合理的或无意义的输入数据所构成的集合。
7、步骤:
-明确需求
-确定有效和无效等价类
-提取数据编写测试用例
二.案例设计
例:验证电话号码的正确性
要求:1.区号:空或者三位数字
2.前缀码:非"0"且非"1"开头的三位数字
3.后缀码:四位数字
步骤:
1.根据要求,可以看出有效与无效的号码区别在于:长度、类型、规则。因此从这三个模块划分有效与无效类。
2.等价类表设计
注意:在设计无效等价类时,当某个模块设计为无效等价类时,另外的模块都需要满足有效等价类。
参数 | 说明 | 有效等价类 | 有效数据 | 无效等价类 | 无效数据 |
区号 前缀码 后缀码 | 长度 | 空/3位 3位 4位 | 空/123 234 1234 | 非空/2位 2位 3位 | 12 23 123 |
区号 前缀码 后缀码 | 类型 | 自然数 自然数 自然数 | / / / | 非自然数 非自然数 非自然数 | 12A 23A 123A |
区号 前缀码 后缀码 | 规则 | 无 非"0"且非"1"开头 无 | / / / | 无 "0"或者"1"开头 无 | / 023/123 / |
3.测试用例编写