Testbed静态测试使用指南V1.1

Testbed静态测试使用指南V1.1 by Min.Wu

目 录

1

Testbed功能介绍 ................................................................................................ 1 1.1 编程规则验证 ...................................................................................................... 1 1.2 数据流分析 .......................................................................................................... 1 1.3 控制流分析 .......................................................................................................... 1 1.4 表达式分析 .......................................................................................................... 2 1.5 接口分析 .............................................................................................................. 2 1.6 软件质量度量分析 .............................................................................................. 2 2

使用Testbed 进行编码规则的定制和检查 ...................................................... 3

2.1 确定测试需求 ...................................................................................................... 3 2.2 建立测试工程 ...................................................................................................... 3 2.3 定制代码分析规则 .............................................................................................. 6 2.4 配置Report选项 ................................................................................................. 7 2.5 分析执行及结果查看 .......................................................................................... 8 3

结果分析及测试报告编写.................................................................................. 9

3.1 质量度量信息的获取 .......................................................................................... 9 3.2 程序质量度量报告单 ........................................................................................ 11 3.3 静态分析质量报告单 ........................................................................................ 12 附录A:静态分析推荐规则使用说明 ........................................................................ 1

i

Testbed静态测试使用指南V1.1 by Min.Wu

1 Testbed功能介绍

1.1 编程规则验证

编程标准验证是高可靠性软件开发不可缺少的软件质量保证方法,使用LDRA Testbed 自动地验证应用软件是否遵循了所选择的编程规则。编程规则由软件项目管理者根据自身项目的特点并参考现有的成熟的软件编程标准制定,如DERA(欧洲防务标准),MISRA(汽车软件标准),LDRA Testbed依据此规则搜索应用程序,并判断代码是否违反所制定的编程规则。LDRA Testbed报告所有违反编程规则的代码并以文本方式或图形反标注的方式显示。测试人员或编程人员可根据显示的信息对违反编程规则的代码进行修改。 1.2 数据流分析

LDRA Testbed分析软件中全局变量、局域变量及过程参数的使用状况,并以图形显示、HTML或ASCII文本报告方式表示,清晰地识别出变量使用引起的软件错误,此种方法既可使用于单元级,亦可使用于集成级、系统级。

通过 Testbed数据流分析功能,可方便地分析出软件中一些可能的程序欠缺,如:

1. 没使用的函数参数; 2. 不匹配的参数; 3. 变量未赋初值就引用; 4. 代码中有多余变量; 5. 给值传递参数赋值; 6. 无返回值的函数路径; 7. 函数的实参是全局变量。 1.3 控制流分析

控制流分析检查以下内容: 1. 不可达代码; 2. 不合理的循环结构; 3. 存在浮点相等比较; 4. 函数存在多个出口; 5. 函数存在多个入口。

1

Testbed静态测试使用指南V1.1 by Min.Wu

1.4 表达式分析

表达式分析检查以下内容: 1. 表达式中的括号使用不当; 2. 数组下标越界; 3. 存在被零除;

4. SWITCH语句缺少DEFAULT; 5. CASE语句缺少BREAK; 6. 存在混合运算; 7. 对指针进行逻辑比较;

8. 在逻辑表达式中使用赋值操作符。 1.5 接口分析

接口分析检查以下内容: 1. 实参和形参个数不匹配; 2. 实参和形参类型不匹配;

3. 函数参数定义的结构和调用的结构不一致。 1.6 软件质量度量分析

对于软件开发工程师、项目负责人及高级管理者来说,软件质量的管理与监控是非常困难的且费时。LDRA Testbed很好地解决了这一问题,使得管理者很容易地收集正在开发的软件系统的相关信息并判断软件是否满足软件质量标准要求,从而达到对软件项目的质量跟踪与控制。Testbed 提供数据文件接口,用户可基于现行软件标准自行定义适合本系统或项目的软件质量模型。

静态分析的软件度量元和相应的说明见表1:

表 1 软件质量度量元说明

序号 度量元 1 2 3 4 5

指标要求 <=200 >=20% <=7 0 <=10 说明 函数包含的语句数。 代码的有效注释率。 函数参数个数。 Goto语句数。 控制流图中边的数量与节点数量之间的差值加2。 2

函数代码行数 注释度量 函数参数 Goto语句 圈复杂度

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4