任何工程产品都可以使用一下两法之一进行测试:
黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现的功能是否符合要求
白盒测试:已知产品内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否以经过检查
软件的黑盒测试意味着测试要在软件的接口处进行,这种方法是把测试对象看成一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能性测试或数据驱动测试
软件白盒测试是对软件的过程细节作细致的检查,这种方法是把测试对象看作一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过不同点检查程序状态,确定实际状态是否与预期的状态一致,因此白盒测试又称为结构测试或逻辑驱动测试
黑盒测试白盒测试对比
从上边的对比可以看出,黑盒测试出发点是用户需求,而白盒测试出发点事程序需求。所以最好由独立的组织来做黑盒测试,这样更客观;白盒测试一般由开发人员完成,黑盒测试由团队中测试人员完成