目录
1 白盒测试
白盒测试允许我们检查程序内部的结构,从中获得测试数据,遗憾的是,常常忽略了程序的规范。白盒测试关注的是测试用例执行的程度或覆盖程序逻辑结构(源代码)的程度。
常见的白盒测试方法主要有:语句覆盖、判定覆盖、条件覆盖、多重条件覆盖等。
2 黑盒测试
黑盒测试就是将程序视为黑盒子,测试目标与程序内部机制和结构完全无关,而是将中间集中放在发现程序不按其规范正确运行的环境条件。这种测试条件下,测试数据完全来源于软件规范,也就是说,不需要去了解程序的内部结构。
如果想用黑盒测试发现程序中的所有错误,判定的标准就是“穷举输入测试”,将所有可能的输入条件都作为测试用例。但这显然是无法实现的,我们知道,测试投入的目标在于通过有限的测试用例,我们需要做的就是最大限度的提高发现的问题的数量,以取得良好的测试效果。
常见的黑盒测试方法主要有:等价类划分、边界值分析、因果图分析、错误猜测等。
3 灰盒测试
灰盒测试是既关注程序是否符合软件规范,也关注程序内部的结构。可以说是黑盒测试和白盒测试二者的结合体。
推荐的步骤是先使用黑盒测试方法来设计测试用例,然后视情况需要使用白盒测试方法来设计补充测试用例。