8.其他检查
其他检查包括如下内容:
1)软件的扩展字符、编码、兼容性、警告/提示信息。
2)检查变量的交叉引用表:检查未说明的变量和违反了类型规定的变量,以及变量的引用和使用情况。
3)检查标号的交叉引用表:验证所有标号的正确性。
4)检查子程序、宏、函数:验证每次调用与所调用位置是否正确,调用的子程序、宏、函数是否存在,参数是否一致。
5)等价性检查:检查全部等价变量的类型的一致性。
6)常量检查:确认常量的取值和数制、数据类型。
7)标准检查:检查程序中是否有违反标准的问题。
8)风格检查:检查程序的设计风格。
9)比较控制流:比较设计控制流图和实际程序生成的控制流图的差异。
10)选择、激活路径:在设计控制流图中选择某条路径,然后在实际的程序中激活这条路径,如果不能激活,则程序可能有错。
11)补充文档:根据以上检查项目,可以编制代码规则、规范和检查表等作为测试用例。
12)对照程序的规格说明,详细阅读源代码,比较实际的代码,从差异中发现程序的问题和错误。
13)检查必须遵守规定代码的语法格式和规则(如排版、注释、标识符命名、可读性、变量、函数、过程、可测性、程序效率、质量保证、代码编辑、编译、审查、代码测试、维护、宏)等各方面的编码要求。
在进行人工代码检查时,可以制作代码走查缺陷表。在缺陷检查表中,我们列出工作中遇到的典型错误,如下所示:
(1)格式部分
嵌套的IF是否正确地缩进。
注释是否准确并有意义。
使用的符号是否有意义。
代码基本上是否与开始时的模块模式统一、一致。
是否遵循了全套的编程标准。
(2)入口和出口的连接
初始入口和最终出口是否正确。
被传送的参数值是否正确地设置了。
对关键的被调用的模块的意外情况是否有所处理(如丢失、混乱)。
对另一个模块的每一次调用时,全部所需的参数是否传送给每一个被调用的模块。
(3)存储器问题
每一个域在第一次使用前是否正确地初始化。
规定的域是否正确。
每个域是否有正确的变量类型声明。
(4)判断及转移
用于判断的是否是正确的变量。
是否判断了正确的条件。
每个转移目标是否正确地并且至少执行了一次。