对于输入和输出规格说明
对于每个范围(L,U):
选择5个测试用例:小于L,等于L,比L大但比U小,等于U以及大于U。
对于每个集合S:
选择2个测试用例:一个S的元素和一个非S的元素。 [Page]
对于每个精确值P:
选择2个测试用例:P和其他任何值。
2. 功能测试
一个可选的黑盒测试形式是根据模块的功能选择测试数据。在功能测试中,要区别每个功能项或在模块中实现的功能。
玻璃盒单元测试技术:
在玻璃盒测试技术中,基于代码的检查,而不是规格说明的检查来选择测试用例。有一些不同形式的玻璃盒测试,包括语句,分支以及路径覆盖。
1. 结构测试:语句,分支和路径覆盖
最简单形式的玻璃盒测试是语句覆盖,即运行一系列测试用例,在运行期间每个语句最少执行一次。这个方法的缺点是不能保证对分支的所有输出都充分地测试。
语句覆盖的一个改进是分支覆盖,即运行一系列,确保所有的分支最少测试一次。
像语句或分支覆盖的技术成为结构测试。
功能最强大的结构测试的形式是路径覆盖,即测试所有的路径。
2. 复杂性度量
质量保证观点提供另一个玻璃盒单元测试的方法。假定一个管理者被告知代码模块m1比代码模块m2更复杂,且不管术语复杂是如何准确定义的,管理者直觉上相信m1可能比m2有更多的错误。沿着这条思路,计算机科学家已经开发出一些软件复杂性度量,以帮助确定哪个代码模块更可能有错误。如果发现一个代码模块的复杂度不合理的高,管理者可能直接要求对它重新设计和重新实现,与试图调试一个有错的代码模块相比,可能从头开始的代价更小,速度更快。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/