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