黑盒测试又称功能测试或数据驱动测试
– 把测试对象当作看不见内部的黑盒,在完全不考虑程序内部结构和处理过程的情况下,测试者仅依据程序功能的需求规范考虑,确定测试用例和推断测试结果的正确性.
– 站在使用软件或程序的角度,从输入数据与输出数据的对应关系进行的测试
– 在软件的接口处进行测试
– 通过导出执行程序所有功能需求的输入条件集,实现功能覆盖,需求覆盖
1)等价类划分法
(1) 划分等价类的考虑因素
- 输入数据
- 输出数据
有效等价类:对于程序规格说明来说,是合理的,有意义的输入数据构成的集合
无效等价类:对于程序规格说明来说,是不合理的,无意义的输入数据构成的集合
(2)划分等价类的标准
1) 完备测试、避免冗余
2) 划分等价类重要的是:集合的划分、划分为互不相交的一组子集,而子集的并是整个集合
3) 并是整个集合:备性
4) 子集互不相交:保证一种形式的无冗余性
5) 同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到“相同的执行路径”。
(3)设计测试用例
在确立了等价类后,可建立等价类表,列出所有划分出的等价类输入条件:有效等价类、无效等价类,然后从划分出的等价类中按以下三个原则设计测试用例:
1)为每一个等价类规定一个唯一的编号;
2)设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步,直到所有的 有效等价类都被覆盖为止;
3)设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
(4)等价类案例分析:
新浪邮箱名,其输入要求如下:
1. 4~16个字符
2. 支持英文小写、数字、下划线
3. 不支持全部