黑盒测试与白盒测试的区别:
黑盒测试:已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求,就是类似于直接使用你的软件,不去研究它的内部代码等,直接使用去发现问题,又称为功能测试。
白盒测试:已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否经过检查,类似于研究内部代码和结构,又称为结构测试。
黑盒测试就是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明,因此黑盒测试又叫功能测试,黑盒测试主要为发现一下几类错误:
1、是否有不正确或遗漏的功能
2、在接口上,输入是否能正确的接受?能否输出正确的结果?
3、是否具有数据结构错误或外部信息(例如数据文件)访问错误?
4、性能上是否能够满足要求?
5、是否有初始化和终止性错误?
白盒测试就是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序状态,确定实际状态是否和预期的状态一致,因此白盒测试又称为结构测试。白盒测试主要是相对程序模块进行如下的检查:
1、对程序模块的所有独立的执行路径至少测试一遍
2、对所有的逻辑判定,取“真”与取“假”的两种情况都能至少测一遍
3、在循环的边界和运行的边界内执行循环体
4、测试内部数据的有效性