Testbed静态测试使用指南V11.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Testbed静态测试使用指南V11

目 录 1 Testbed功能介绍 1 1.1 编程规则验证 1 1.2 数据流分析 1 1.3 控制流分析 1 1.4 表达式分析 2 1.5 接口分析 2 1.6 软件质量度量分析 2 2 使用Testbed 进行编码规则的定制和检查 2 2.1 确定测试需求 2 2.2 建立测试工程 2 2.3 定制代码分析规则 2 2.4 配置Report选项 2 2.5 分析执行及结果查看 2 3 结果分析及测试报告编写 2 3.1 质量度量信息的获取 2 3.2 程序质量度量报告单 2 3.3 静态分析质量报告单 2 附录A:静态分析推荐规则使用说明 2 Testbed功能介绍 编程验证 编程标准验证是高可靠性软件开发不可缺少的软件质量保证方法,使用LDRA Testbed 自动地验证应用软件是否遵循了所选择的编程规则。编程规则由软件项目管理者根据自身项目的特点并参考现有的成熟的软件编程标准制定,如DERA(欧洲防务标准),MISRA(汽车软件标准),LDRA Testbed依据此规则搜索应用程序,并判断代码是否违反所制定的编程规则。LDRA Testbed报告所有违反编程规则的代码并以文本方式或图形反标注的方式显示。测试人员或编程人员可根据显示的信息对违反编程规则的代码进行修改。 LDRA Testbed分析软件中全局变量、局域变量及过程参数的使用状况,并以图形显示、HTML或ASCII文本报告方式表示,清晰地识别出变量使用引起的软件错误,此种方法既可使用于单元级,亦可使用于集成级、系统级。 通过 Testbed数据流分析功能,可方便地分析出软件中一些可能的程序欠缺,如: 没使用的函数参数; 不匹配的参数; 变量未赋初值就引用; 代码中有多余变量; 给值传递参数赋值; 无返回值的函数路径; 函数的实参是全局变量。控制流分析检查以下内容: 不可达代码; 不合理的循环结构; 存在浮点相等比较; 函数存在多个出口; 函数存在多个入口。表达式分析检查以下内容: 表达式中的括号使用不当; 数组下标越界; 存在被零除; SWITCH语句缺少DEFAULT; CASE语句缺少BREAK; 存在混合运算; 对指针进行逻辑比较; 在逻辑表达式中使用赋值操作符。 接口分析检查以下内容: 软件度量分析 对于软件开发工程师、项目负责人及高级管理者来说,软件质量的管理与监控是非常困难的且费时。LDRA Testbed很好地解决了这一问题,使得管理者很容易地收集正在开发的软件系统的相关信息并判断软件是否满足软件质量标准要求,从而达到对软件项目的质量跟踪与控制。Testbed 提供数据文件接口,用户可基于现行软件标准自行定义适合本系统或项目的软件质量模型。 静态分析的软件度量元和相应的说明见表: 软件质量度量元说明 序号 度量元 指标要求 说明 函数代码行数 <=200 函数包含的语句数。 注释度量 >=20% 代码的有效注释率。 函数参数 <=7 函数参数个数。 Goto语句 0 Goto语句数。 圈复杂度 <=10 控制流图中边的数量与节点数量之间的差值加2。 基本复杂度 <=4 圈复杂度与流程图中结构化子图的数量之间的差值;基本复杂度高意味着非结构化程度高,难以模块化和维护。 LCSAJ密度 <=20 LCSAJ 密度是一个描述软件可维护性的概念,它是指当改变一行代码时,对其它线性代码顺序和跳转的影响程度,值越大说明影响的测试路径相对越多,因此系统可维护性越低。 控制流结点数 <=10 控制流结点数表示流程图中控制流相交的交点数。 基本结点数 <=5 将流程图中的结构化部分简化成一个点,简化以后流程图的结点数是基本结点数。 扇入度量 <=7 调用本函数的上层函数的个数。 扇出度量 <=7 本函数调用下层函数的个数。 LDRA Testbed可通过编辑编码规则文件cpen.dat/cppen.dat实现编码规则的定制,下面将具体介绍: 确定测试需求 在测试需求分析阶段确定: 确定测试对象:整个MSVC工程还是文件集合;纯C文件、纯C++还是C/C++混合文件。 确定测试内容:确定静态分析规则,可参考附录A所示静态分析推荐规则使用说明。 确定测试“类型”:确定是进行击System分析还是Group分析(选择Group时,不对代码进行集成测试,只是采用批处理方式分析单个文件)。 建立测试工程 1. 启动Testbed,根据分析对象,选择测试工程类型。如需对整个MSVC工程进行分析,选择Create Set Based Upon MSVC v6 Project;如分析对象是一个或多个C、C++文件,选择Select/Create/Delete Set…。下面以在Set 菜单下选择Select/Crea

文档评论(0)

didala + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档