黑盒测试
黑盒测试也成为功能测试或数据驱动测试,它是在已知产品具有的功能的前提下通过测试来监测每个功能是否能够正常使用。在测试的过程中,把程序看做是一个黑盒子,在完全不考虑程序内部结构和特性的情况下,测试者对程序接口进行测试。黑盒测试只监测程序能够按照说明书上正常使用,输入数据后能否正确返回对应的结果,并且保持外部信息的完整性。
白盒测试
白盒测试也成为结构测试或逻辑驱动测试,要求测试者知道产品内部结构以及工作流程,通过测试来监测产品内部动作是否能够按照规定正确执行。要按照程序内部的结构进行程序测试,检测程序中每条通路是否能够按照预定的要求执行而不考虑其他功能。
灰盒测试
灰盒测试介于白盒测试和黑盒测试之间,灰盒测试不但要关注输出对于输入的正确性,同时也要关注程序的内部表现,但这种关注不像白盒测试那样详细和完整,只是通过一些表征性的现象、事件、标志等来判断内部的运行状态,有时候可能输出结果是正确的,但是内部逻辑不正确。每次都利用白盒测试效率低,因此会采用灰盒测试的方法。