第5章 黑盒测**例设计技术
黑盒测试技术就是对被测软件S,设S的功能空间是为F,选取或者生成F的一个子集T属于F,T称为测**例。各种黑盒测试技术所不同的是选择T的方式不同。对于一般的软件来说,F是非常大的,以至于穷举测试是不可能的。黑盒测试技术就是根据功能需求来设计测**例,验证软件是否按照预期要求工作。黑盒测试通常把程序看做一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下进行测试。采用黑盒测试技术并不需要提供源代码,如果用户不能或者不愿意提供源代码,黑盒测试是可行的方法。黑盒测试技术主要有等价类划分法、边界条件法、因果图法、决���表法、正交表测试法等,这些方法都是借鉴了其他学科理论和工程实践。
5.1 等价类划分法
等价类划分法测试技术是依据软件系统输入集合、输出集合或操作集合实现功能的相同性为依据,对其进行的子集划分,并对每个子集产生一个测**例的测**例设计方法。划分是指互不相交的一组子集,这些子集的并集是整个集合。这样的划分对测试的意义在于:没有一个集合元素不属于其中的一个子集,这提供了一种形式的完备性;同时没有一个元素同时属于其中的两个或两个以上的子集,这提供了一种形式的无冗余性。一个等价类或者等价划分是指测试相同目标或者暴露相同软件缺陷的一组测**例。等价类法设计测**例的意义在于把可能的测**例集缩减到可控制且仍然足以测试软件的小范围内。如果为了减少测**例的数量过度划分等价类,就有漏掉那些可能暴露软件缺陷的测试的风险。对于初级软件测试员,一定要请经验丰富的测试员审查划分好的等价类。
……