1. 黑盒测试和白盒测试的直观图 从图中可以直接看出来,黑盒测试就当整个程序是个黑盒子,我们看不到它里面做了些什么事情,只能 通过输入输出看是否能得到我们所需的来测试。而白盒测试可以当盒子是透明的,里面的一切我们都看的清 楚,从而我们可以通过去测内部结构来测试。 2. 黑盒测试 (Black-Box Testing) 黑盒测试又称为功能测试、数据驱动测试或基于规格说明书的测试,是一种从用户观点出发的测试。测 试人员一般把被测程序当作一个黑盒子。 黑盒测试主要测到的错误类型有:不正确或遗漏的功能;接口、界面错误;性能错误;数据结构或外部 数据访问错误;初始化或终止条件错误等等。 常用的黑盒测试方法有:等价类划分法;边界值分析法;因果图法;场景法;正交实验设计法;判定表
驱动分析法;错误推测法;功能图分析法。 · 等价类划分法 等价类分为有效等价类和无效等价类,其中,有效等价类是指对于程序的规格说明来说是合理的, 有意义的输入数据构成的集合;而无效等价类是指对于程序的规格说明来说是不合理的,没有意义的输入数 据构成的集合。 确定等价类的原则是:a. 在输入条件规定了取值范围或值的个数的情况下,则可以确定一个有效等 价类和两个无效等价类,比如若规定的输入范围是1<x<10的所有数,则有效的是1~10内的任意数,而无 效的是 -∞~0.9999 和10.00001~+∞; b. 在输入条件规定了输入值的集合或者规定了“必须如何”的条件 的情况下,则可以确立一个有效等价类和一个无效等价类;c.在输入条件是一个布尔量的情况下,可以确定 一个有效的等价类和一个无效的等价类;d. 在规定了输入数据的一组值(假定n个),并且程序要对每一个 输入值分别处理的情况下,可以确立n个有效等价类和一个无效等价类;e. 在规定了输入数据必须遵守的规 则的情况下,可以确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则);f.在确 知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将改等价类进一步的划分为更小的等价类。 · 边界值分析法 根据经验法则,大量的错误是发生在输入或输出范围的边界上的,而不是发生在输入输出范围的内部。 因此针对各种边界情况涉及测试用例,可以查出更多的错误。而使用边界值的分析方法涉及测试用例,首先应 确定边界情况。通常输入和输出等价类的边界,应当选取正好等于,刚刚大于或者刚刚小于边界的值作为测试 数据,而不是选取等价类中的典型值或任意值作为测试数据。 边界值选择的原则: a. 如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚 刚超越这个范围的边界的值作为测试输入数据。 例如,如果程序的规格说明中规定:“重量在10公斤至50公 斤范围内的邮件,其邮费计算公式为……”。作为测试用例,我们应取10及50,还应取10.01,49.99,9.99及 50.01等;b. 如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数小一,和比最大个数大 一的数作为测试数据。例如,一个输入文件应包括1~255个记录,则测试用例可取1和255,还应取0及256 等。c. 将前面两个原则应用于输出条件,即涉及测试用例使输出值达到边界值及其左右的值。d.如果程序的 规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。e. 如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例数据;f. 分析 规格说明,找出其他可能的边界条件。
|