- 从被测试对象的角度分类可分为黑盒测试、白盒测试、灰盒测试
- 从被测试对象是否运行可分为动态测试、静态测试
- 从测试执行时使用的工具角度可分为手工测试和自动化测试
1. 黑盒、白盒、灰盒测试的区别
黑盒测试只关注输入输出,输出结果正确则功能正确(系统测试);白盒测试不仅关注输出结果的正确性还关注程序的内部逻辑处理过程(单元测试);灰盒测试既有黑盒测试又有白盒测试(集成测试)。
2. 动态、静态测试的区别
静态测试是指不运行代码,利用其它手段如:代码走读、文档评审、程序分析等方式来进行测试;动态测试是通过观察代码运行时的动作来提供执行跟踪、时间分析、测试覆盖等方面的信息。
单元测试中最常见的测试方法是逻辑覆盖。
3. 手工与自动化测试的区别
手工测试是指在测试过程中人工完成,不适用测试工具;自动化测试是使用软件来控制测试执行过程。