黑盒测试和白盒测试的优缺点
类别 |
优点 |
缺点 |
黑盒测试 |
不需要了解软件代码 从用户角度出发 |
无法保证代码内各个路径被覆盖到 |
白盒测试 |
强制测试开发工程师关注代码的具体实现 揭露隐藏在代码中的Bug 是最佳编程实践 |
需要花费更多的钱和时间 不可能测试每一种可能性 测试人员需要有较强的编码能力 |
什么是黑盒测试?
黑盒测试是一种软件测试方法,它基于规范审查应用程序的功能,因此也被称为基于规范的测试。一个独立的测试团队,通常会在软件测试生命周期中执行这种测试。
注:这种测试可以应用到单元测试、集成测试、系统测试、验收测试等不同级别的软件测试中。
黑盒测试常用的行为测试技术有:等价类(Equivalence Class)、边界值分析(Boundary Value Analysis)、正交实验(Orthogonal Arrays)、判定表(Decision Tables)、状态模型(State Models)、探索性测试(Exploratory Testing)、全对测试(All-pairs testing)等。
什么是白盒测试?
白盒测试是一种测试技术,它主要检查程序代码中的程序结构和测试数据。也被称为逻辑驱动测试、路径驱动测试或结构测试。
白盒测试常用的测试技术有:语句覆盖(Statement Coverage)、分支覆盖(Branch Coverage)、路径覆盖(Path Coverage)