1. 黑盒测试和白盒测试的直观图
从图中可以直接看出来,黑盒测试就当整个程序是个黑盒子,我们看不到它里面做了些什么事情,只能通过输入输出看是否能得到我们所需的来测试。而白盒测试可以当盒子是透明的,里面的一切我们都看的清楚,从而我们可以通过去测内部结构来测试。
2. 黑盒测试 (Black-Box Testing)
黑盒测试又称为功能测试、数据驱动测试或基于规格说明书的测试,是一种从用户观点出发的测试。测试人员一般把被测程序当作一个黑盒子。
黑盒测试主要测到的错误类型有:不正确或遗漏的功能;接口、界面错误;性能错误;数据结构或外部数据访问错误;初始化或终止条件错误等等。
常用的黑盒测试方法有:等价类划分法;边界值分析法;因果图法;场景法;正交实验设计法;判定表驱动分析法;错误推测法;功能图分析法。
· 等价类划分法
等价类分为有效等价类和无效等价类,其中,有效等价类是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合;而无效等价类是指对于程序的规格说明来说是不合理的,没有意义的输入数据构成的集合。
确定等价类的原则是:a. 在输入条件规定了取值范围或值的个数的情况下,则可以确定一个有效等价类和两个无效等价类,比如若规定的输入范围是1<x<10的所有数,则有效的是1~10内的任意数,而无效的是 -∞~0.9999 和10.00001~+∞; b. 在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,则可以确立一个有效等价类和一个无效等价类;c.在输入条件是一个布尔量的情况下,可以确定一个有效的等价类和一个无效的等价类;d. 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可以确立n个有效等价类和一个无效等价类;e. 在规定了输入数据必须遵守的规则的情况下,可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则);f.在确知已划分的等价类中各元素在程序处理中的方式不同的情况下