【Java笔记】黑盒测试&白盒测试Black Box & White Box

>定义和对比

Black box - test to interface spec.黑盒测试是系统应该做什么,而不是它怎么做,是对输入和输出结果的测试。不需要关注内部代码,而是在输入和输出中寻找问题的测试。(即功能测试)

White box - test to implementation.白盒测试允许测试人员对系统有全面的了解,从而扩展了测试系统的方法,这个额外的覆盖范围可以通过利用知识来实现,例如,利用单个条件和循环来确保所有可能的分支都被测试集执行。该测试属于对内部代码及其结构的检查。(即结构测试)

>测试需要涵盖的点

黑盒测试:

1. 关于List:a. List是否为空,或者只有一个值(.size()为1);

                     b. 赋值列表和目标列表长度不一致;

2. 关于输出:a. 没有输出;

                      b. 有输出;

3. 关于比较大小:大于,小于,等于;

4. 极值和特殊值;

5. 输入范围:输入范围内,输入范围外。

白盒测试:

测试需要涵盖代码中所有的路径。

固定循环:循环两次即可。

变量循环:0次,1次,2次都要涵盖。

有例子如下(摘自UQ-CSSE2002-2020S1期末考试参考答案):

【Java笔记】黑盒测试&白盒测试Black Box & White Box