8.其他检查

  其他检查包括如下内容:

  1)软件的扩展字符、编码、兼容性、警告/提示信息。

  2)检查变量的交叉引用表:检查未说明的变量和违反了类型规定的变量,以及变量的引用和使用情况。

  3)检查标号的交叉引用表:验证所有标号的正确性。

  4)检查子程序、宏、函数:验证每次调用与所调用位置是否正确,调用的子程序、宏、函数是否存在,参数是否一致。

  5)等价性检查:检查全部等价变量的类型的一致性。

  6)常量检查:确认常量的取值和数制、数据类型。

  7)标准检查:检查程序中是否有违反标准的问题。

  8)风格检查:检查程序的设计风格。

  9)比较控制流:比较设计控制流图和实际程序生成的控制流图的差异。

  10)选择、激活路径:在设计控制流图中选择某条路径,然后在实际的程序中激活这条路径,如果不能激活,则程序可能有错。

  11)补充文档:根据以上检查项目,可以编制代码规则、规范和检查表等作为测试用例。

  12)对照程序的规格说明,详细阅读源代码,比较实际的代码,从差异中发现程序的问题和错误。

  13)检查必须遵守规定代码的语法格式和规则(如排版、注释、标识符命名、可读性、变量、函数、过程、可测性、程序效率、质量保证、代码编辑、编译、审查、代码测试、维护、宏)等各方面的编码要求。

  在进行人工代码检查时,可以制作代码走查缺陷表。在缺陷检查表中,我们列出工作中遇到的典型错误,如下所示:

  (1)格式部分

  嵌套的IF是否正确地缩进。

  注释是否准确并有意义。

  使用的符号是否有意义。

  代码基本上是否与开始时的模块模式统一、一致。

  是否遵循了全套的编程标准。

  (2)入口和出口的连接

  初始入口和终出口是否正确。

  被传送的参数值是否正确地设置了。

  对关键的被调用的模块的意外情况是否有所处理(如丢失、混乱)。

  对另一个模块的每一次调用时,全部所需的参数是否传送给每一个被调用的模块。

  (3)存储器问题

  每一个域在第一次使用前是否正确地初始化。

  规定的域是否正确。

  每个域是否有正确的变量类型声明。

  (4)判断及转移

  用于判断的是否是正确的变量。

  是否判断了正确的条件。

  每个转移目标是否正确地并且至少执行了一次。