在白盒测试中,可以使用各种测试方法进行测试。但是,测试时要考虑以下5个问题:
1)测试中尽量先用自动化工具来进行静态结构分析。
2)测试中建议先从静态测试开始,如:静态结构分析、代码走查和静态质量度量,然后进行动态测试,如:覆盖率测试。
3)将静态分析的结果作为依据,再使用代码检查和动态测试的方式对静态分析结果进行进一步确认,提高测试效率及准确性。
4)覆盖率测试是白盒测试中的重要手段,在测试报告中可以作为量化指标的依据,对于软件的重点模块,应使用多种覆盖率标准衡量代码的覆盖率。
5)在不同的测试阶段,测试的侧重点是不同的。
在单元测试阶段:以程序语法检查、程序逻辑检查、代码检查、逻辑覆盖为主。
在集成测试阶段:需要增加静态结构分析、静态质量度量、以接口测试为主。
在系统测试阶段:在真实系统工作环境下通过与系统的需求定义作比较,检验完整的软件配置项能否和系统正确连接,发现软件与系统/子系统设计文档和软件开发合同规定不符合或与之矛盾的地方;验证系统是否满足了需求规格的定义,找出与需求规格不相符或与之矛盾的地方,从而提出更加完善的方案,确保最终软件系统满足产品需求并且遵循系统设计的标准和规定。
验收测试阶段:按照需求开发,体验该产品是否能够满足使用要求,有没有达到原设计水平,完成的功能怎样,是否符合用户的需求,以达到预期目的为主。
1、代码检查
代码检查是静态测试的主要方法,它包括代码走查、桌面检查、流程图审查等。下面通过如下几点来介绍代码检查。
(1)概述
代码检查主要检查代码和流图设计的一致性,代码结构的合理性,代码编写的标准性、可读性,代码的逻辑表达的正确性等方面。它包括变量检查,命名和类型审查,程序逻辑审查,程序语法检查和程序结构检查等内容。
最常见的静态测试是找出源代码的语法错误,这类测试可由编译器来完成。
(2)代码检查的目的
代码检查是为达到以下目的:
检查程序是不是按照某种标准或规范编写的。
发现程序缺陷。
发现程序产生的错误。
检查代码是不是流程图要求的。
检查有没有遗漏的项目。
使代码易于移植,因为代码经常需要在不同的硬件中运行,或者使用不同的编译器编译。
使代码易于阅读、理解和维护。
(3)代码检查需要的文档
在进行代码检查前应准备好需求文档、程序设计文档、程序的源代码清单、代码编码标准、代码缺陷检查表和流程图等。
2、代码检查的方式
代码检查的方式有3种,下面分别介绍。
1)桌面检查
桌面检查是程序员对源程序代码进行分析、检验,并补充相关的文档,发现程序中的错误的过程。
由于程序员熟悉自己的程序,可以由程序员自己检查,这样可以节省很多时间,但要注意避免自己的主观判断。