黑盒测试过程中不用考虑内部逻辑结构,仅仅需要验证软件外部功能是否符合用户实际需求。黑盒测试可以发现以下缺陷:
(1)外部逻辑功能缺陷,如界面显示信息错误等。
(2)兼容性错误,如系统版本支持、运行环境等。
(3)性能问题,如运行速度、响应时间等。
白盒测试与黑盒测试不同,白盒测试可以设计测试用例尽可能覆盖程序中的分支语句,分析程序内部结构。白盒测试常用于以下几种情况:
(1)源程序中含有多个分支,在设计测试用例时要尽可能覆盖所有分支,提高测试覆盖率。
(2)内存泄漏检查迅速,黑盒测试只能在程序长时间运行中发现内存泄漏问题,而白盒测试能立即发现内存泄漏问题。
黑盒测试与白盒测试在不同的测试阶段使用情况也不同,两者在不同阶段的使用情况如表3-9所示。
表3-9黑盒测试和白盒测试不同阶段的使用情况
从表3-9中可以看出各个阶段使用的测试方法不同,在测试过程中,黑盒测试与白盒测试结合使用会大大提升软件测试质量。