您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > Testbed静态测试使用指南V11
Testbed静态测试使用指南V1.1byMin.Wui目录1Testbed功能介绍................................................................................................11.1编程规则验证......................................................................................................11.2数据流分析..........................................................................................................11.3控制流分析..........................................................................................................11.4表达式分析..........................................................................................................21.5接口分析..............................................................................................................21.6软件质量度量分析..............................................................................................22使用Testbed进行编码规则的定制和检查......................................................32.1确定测试需求......................................................................................................32.2建立测试工程......................................................................................................32.3定制代码分析规则..............................................................................................62.4配置Report选项.................................................................................................72.5分析执行及结果查看..........................................................................................83结果分析及测试报告编写..................................................................................93.1质量度量信息的获取..........................................................................................93.2程序质量度量报告单........................................................................................113.3静态分析质量报告单........................................................................................12附录A:静态分析推荐规则使用说明........................................................................1Testbed静态测试使用指南V1.1byMin.Wu11Testbed功能介绍1.1编程规则验证编程标准验证是高可靠性软件开发不可缺少的软件质量保证方法,使用LDRATestbed自动地验证应用软件是否遵循了所选择的编程规则。编程规则由软件项目管理者根据自身项目的特点并参考现有的成熟的软件编程标准制定,如DERA(欧洲防务标准),MISRA(汽车软件标准),LDRATestbed依据此规则搜索应用程序,并判断代码是否违反所制定的编程规则。LDRATestbed报告所有违反编程规则的代码并以文本方式或图形反标注的方式显示。测试人员或编程人员可根据显示的信息对违反编程规则的代码进行修改。1.2数据流分析LDRATestbed分析软件中全局变量、局域变量及过程参数的使用状况,并以图形显示、HTML或ASCII文本报告方式表示,清晰地识别出变量使用引起的软件错误,此种方法既可使用于单元级,亦可使用于集成级、系统级。通过Testbed数据流分析功能,可方便地分析出软件中一些可能的程序欠缺,如:1.没使用的函数参数;2.不匹配的参数;3.变量未赋初值就引用;4.代码中有多余变量;5.给值传递参数赋值;6.无返回值的函数路径;7.函数的实参是全局变量。1.3控制流分析控制流分析检查以下内容:1.不可达代码;2.不合理的循环结构;3.存在浮点相等比较;4.函数存在多个出口;5.函数存在多个入口。Testbed静态测试使用指南V1.1byMin.Wu21.4表达式分析表达式分析检查以下内容:1.表达式中的括号使用不当;2.数组下标越界;3.存在被零除;4.SWITCH语句缺少DEFAULT;5.CASE语句缺少BREAK;6.存在混合运算;7.对指针进行逻辑比较;8.在逻辑表达式中使用赋值操作符。1.5接口分析接口分析检查以下内容:1.实参和形参个数不匹配;2.实参和形参类型不匹配;3.函数参数定义的结构和调用的结构不一致。1.6软件质量度量分析对于软件开发工程师、项目负责人及高级管理者来说,软件质量的管理与监控是非常困难的且费时。LDRATestbed很好地解决了这一问题,使得管理者很容易地收集正在开发的软件系统的相关信息并判断软件是否满足软件质量标准要求,从而达到对软件项目的质量跟踪与控制。Testbed提供数据文件接口,用户可基于现行软件标准自行定义适合本系统或项目的软件质量模型。静态分析的软件度量元和相应的说明见表1:表1软件质量度量元说明序号度量元指标要求说明1函数代码行数=200函数包含的语句数。2注释度量=20%代码的有效注释率。3函数参数=7函数参数个数。4Goto语句0Goto语句数。5圈复杂度=10控制流图中边的数量与节点数量之间的差值加2。Testbed静态测试使用指南V1.1byMin.Wu3序号度量元指标要求说明6基本复杂度=4圈复杂度与流程图中结构化子图的数量之间的差值;基本复杂度高意味着非结构化程度高,难以模块化和维护。7LCSAJ密度=20LCSAJ密度是一个描述软件可维护性的概念,它是指当改变一行代码时,对其它线性代码顺序和跳转的影响程度,值越大说明影响的测试路径相对越多,因此系统可维护性越低。8控制流结点数=10控制流结点数表示流程图中控制流相交的交点数。9基本结点数=5将流程图中的结构化部分简化成一个点,简化以后流程图的结点数是基本结点数。10扇入度量=7调用本函数的上层函数的个数。11扇出度量=7本函数调用下层函数的个数。2使用Testbed进行编码规则的定制和检查LDRATestbed可通过编辑编码规则文件cpen.dat/cppen.dat实现编码规则的定制,下面将具体介绍:2.1确定测试需求在测试需求分析阶段确定:1.确定测试对象:整个MSVC工程还是文件集合;纯C文件、纯C++还是C/C++混合文件。2.确定测试内容:确定静态分析规则,可参考附录A所示静态分析推荐规则使用说明。3.确定测试“类型”:确定是进行击System分析还是Group分析(选择Group时,不对代码进行集成测试,只是采用批处理方式分析单个文件)。2.2建立测试工程1.启动Testbed,根据分析对象,选择测试工程类型。如需对整个MSVC工程进行分析,选择CreateSetBasedUponMSVCv6Project;如分析对象是一个或多个C、C++文件,选择Select/Create/DeleteSet…。下面以在Set菜单下选择Testbed静态测试使用指南V1.1byMin.Wu4Select/Create/DeleteSet…选项为例进行说明。2.在Select/CreateSet输入框中输入“Demo”,点击【Create】按钮3.点击【System】按钮(选择Group时,不对代码进行集成测试,只是采用批处理方式分析单个文件)。4.点击右上侧【Add】按钮,选择好要分析的文件,点击【Add】按钮后点【OK】按钮进行确认。Testbed静态测试使用指南V1.1byMin.Wu5Testbed静态测试使用指南V1.1byMin.Wu62.3定制代码分析规则1.点击菜单栏中的Configure,在下拉菜单中点击StaticOptions选项,将会出现如下窗口,点击cpen.dat/cpppen.dat后的Edit按钮,按照提示编辑cpen.dat/cpppen.dat后。若存在已编辑好的编码规则文件,可按旁边的浏览键直接指定该dat文件,则下面第3步可以省略。2.编辑第2列,根据实际需求,将对应编码规则置“0”或“1”,置“0”代表该条编码规则无效,置“1”代表该条编码规则有效。Testbed静态测试使用指南V1.1byMin.Wu72.4配置Report选项1.QualityReport配置点击菜单栏中的Configure,在下拉菜单中点击QualityReportOptions选项,将会出现如下窗口,在ProgrammingStandardModel下拉框中选择“NoModel–allstandards”。如分析的文件为C、C++混合类型,则在下图右侧所示下拉列表中分别选择一个.C和.CPP文件,选中对应文件后选择在ProgrammingStandardModel下拉框中选择“NoModel–allstandards”。在OptionalConfiguration中ViolationSummaries选中“All”,根据需要选择ReportViolationsOnly(QualityReport只列出有违反的)。Testbed静态测试使用指南V1.1byMin.Wu82.MetricsReport配置点击菜单栏中的Configure,在下拉菜单中点击MetricsReportOptions选项,将会出现如下窗口,根据测试需求配置metpen,dat及Kiviat.dat文件。2.5分析执行及结果查看1.点击菜单栏中的Analysis,在下拉菜单中点击SelectAnalysis,将会出现如下窗口,选择前3项,点击StartAnalysis按钮,开始进行静态分析。2.静态分析结束后,点击菜单栏中的Individual/SystemResults,选择下拉菜单TextResults中的QualityReport(HTML),查看质量报告。Testbed静态测试使用指南V1.1byMin.Wu9
本文标题:Testbed静态测试使用指南V11
链接地址:https://www.777doc.com/doc-2862774 .html