软件测试开发阶段的测试策略。开发阶段是指在整个产品开发过程中我们使用的测试方法,在开发阶段的测试策略和方法主要是白盒测试,当然有一些公司也会开展灰盒测试,但并不多,通常灰盒测试也就是我们说的集成测试。
白盒测试也称结构测试或逻辑驱动测试,主要是测试源程序内部的结构,通过测试来检查程序内部动作是否满足设计规格说明书的要求,检查源程序中路径覆盖情况。白盒测试将被测程序看作一个打开的盒子,即程序内部的逻辑结构可以看的很清楚,如图2-10所示。
白盒测试要求对被测程序的结构特性做到一定程度的覆盖,逻辑覆盖是衡量白盒测试完整性的一个重要指,关于逻辑覆盖在后面会有详细的介绍。
通常的程序结构覆盖测试方法有:
1)语句覆盖
2)判定覆盖
3)条件覆盖
4)判定/条件覆盖
5)路径覆盖
6)基本路径覆盖
对源程序进行覆盖测试其实是一种动态的测试过程,测试过程中必须输入不同的数据进行测试来达到覆盖测试的目标。一般来说,覆盖率越高说明我们测试设计越全面,但在实际测试过程中我们又很难100%覆盖,所以我们使用最多的覆盖方法是基本路径覆盖法。
但单元测试时,需要写一些辅助代码,我们把这些辅助代码叫做桩单元和驱动单元,但如果每个单元模块都写很多的辅助代码,这样测试的效率将会大大降低。为了提高测试效率,测试工程师提出了白盒测试框架,希望将这些辅助的代码作为一个固定的框架,这样就可以节约很多的时间,可以将主要的精力放在测试用例的设计上,对于白盒测试框架后面会详细介绍。