LDRATestbed静态分析操作步骤
ldra使用手册
ldra使用手册LDRA使用手册LDRA(Logical Design for Reliable Applications)是一种软件测试工具,广泛应用于软件开发和测试领域。
以下是关于LDRA使用手册的内容:1. 简介:- LDRA是一种全面的软件测试工具,可用于静态和动态代码分析、单元测试、集成测试和验证等多个测试阶段。
-它提供了功能强大的测试套件,用于验证软件系统的安全、可靠和合规性。
2. 安装与配置:-首先,从LDRA官方网站下载LDRA安装程序,并按照提供的说明进行安装。
-随后,根据项目需求配置LDRA工具,包括设置目标平台、编译器、构建环境和测试策略等。
-配置完成后,可以开始使用LDRA进行软件测试。
3. 静态代码分析:- LDRA提供了静态代码分析工具,用于检查代码中的潜在问题、安全漏洞和代码规范违规等。
-使用LDRA的静态分析功能可以提前发现并修复代码中的错误,提高代码质量和可维护性。
4. 动态测试:- LDRA支持各种动态测试方法,包括单元测试、集成测试和验证等。
-可以使用LDRA创建测试用例,并进行代码覆盖率分析、错误检测和性能评估等。
5. 报告生成:- LDRA能够生成详尽的测试报告,包括测试结果、代码覆盖率、错误追踪和质量指标等。
-使用LDRA的报告生成功能可以方便地跟踪和记录测试进度,并为项目管理和决策提供有价值的数据支持。
6. 常见问题解答:- LDRA使用手册还包含了一些常见问题的解答,供用户参考,如如何设置测试环境、如何配置测试策略等。
使用LDRA进行软件测试可以提高软件质量、可靠性和可维护性。
通过详尽的测试过程和全面的测试报告,开发人员和测试人员可以更好地了解代码的性能和安全性,并及时发现和解决问题。
LDRA使用手册提供了全面和详细的指导,帮助用户充分利用LDRA工具,提高软件开发和测试的效率和质量。
Testbed静态检验测试使用指南
目录1Testbed功能介绍 (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)1Testbed功能介绍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.函数存在多个入口。
LDRATestbed静态分析报告操作步骤
LDRATestbed静态分析报告操作步骤使⽤LDRA Testbed对代码进⾏静态分析静态分析的主要操作:①分析对象选择②分析前的设置③分析项的选择与分析过程④分析结果的查看详细操作如下:⼀、分析对象的选择,即如何选择你的分析对象(被分析的⽂件);有两种⽅式:单个⽂件分析和以集(set)的形式分析,以集的形式分析可每次分析多个⽂件1.单个⽂件分析选择打开程序LDRA Testbed,点击Testbed的菜单File select file 通过⽂件浏览窗⼝打开⽂件要分析的⽂件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c 。
点击select之后,可以在⼯具快捷按钮栏的下⽅看见⽬前选择的⽂件2.以集(set)的形式分析选择①创建集合(set),设置集合属性打开程序LDRA Testbed,点击Testbed的菜单Set Select/Create/Delete Sets 弹出set创建窗⼝在图中上部的Select/Create Sets区域写⼊set的名字,然后点击下部的Create按钮创建set,此时会弹出set的属性设置对话框,有两种属性可以设置”Group”和”System;”此两种属性的区别:Group 只是把set中的多个⽂件孤⽴的分析,不会分析⽂件间代码的相互关系,可作为批量分析使⽤。
System把set中的多个⽂件作为⼀个⼯程来分析,能够分析⽂件间的代码的关联,⼀般都会采⽤此种属性。
Set创建之后可在窗⼝中确认如下:其中demo为set的名字,system为set的属性,(0 files)代表set中⽬前没有⽂件②向集合中添加⽂件点击Testbed的菜单Set→List/Add/Remove Files in Sets 弹出添加⽂件窗⼝点击图中的Add按钮,通过⽂件浏览窗⼝可添加多个⽂件到set中。
基于LDRA Testbed的软件完整性静态测试方法研究
基于LDRA Testbed的软件完整性静态测试方法研究王玮【期刊名称】《电脑与电信》【年(卷),期】2014(0)4【摘要】根据软件测试工具LDRA Testbed的特点,本文提出了一种基于LDRA Testbed的软件完整性静态测试方案。
该方案策略性选取四种测试方法,详细描述了每种方法的测试过程,输入项和输出项。
实际运用中表明此方案极大提高了测试效率和测试规范性。
%According to the characteristics of software testing tool LDRA Testbed, this paper presents a scheme of static test of software integrity based on LDRA Testbed. This scheme strategically selects the four testing methods, and describes the test pro-cess of each kind of method, the input and output items in details. Practical application shows that this scheme greatly improves the test efficiency and test standard.【总页数】3页(P49-51)【作者】王玮【作者单位】南京航空航天大学计算中心,江苏南京 211106【正文语种】中文【相关文献】1.基于LDRA Testbed的嵌入式软件静态测试 [J], 职晓;吴迪;张江华2.基于LDRA Testbed的软件静态测试研究与实现 [J], 胡丹瑞3.基于LDRA Testbed的DSP软件单元测试 [J], 李艳艳;4.基于LDRA Testbed的民用机载软件静态测试方法 [J], 周培5.基于LDRA TESTBED的汇编语言软件测试方法研究 [J], 尤艺因版权原因,仅展示原文概要,查看原文内容请购买。
LDRA Testbed单元测试操作步骤
使用LDRA Testbed对代码进行单元测试单元测试的主要操作:⑴被测对象选择⑵编译器的确认与切换⑶单元测试模块Tbrun的打开⑷测试序列(Sequence)的创建⑸测试用例的创建⑹测试用例的IO值设定⑺测试用例中桩的设定⑻测试用例的执行⑼测试结果的查看⑽测试用例的保存⑾测试用例中增加用户全局变量⑿测试用例创建向导中对全局数组和指针的处理详细操作如下:一、测试对象的选择在Testbed中C码中的“单元”就是一个函数,每次对一个函数的代码进行测试,测试时每次打开一个源文件。
打开程序LDRA Testbed,点击Testbed的菜单File select file 通过文件浏览窗口打开文件要分析的文件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c 。
点击select之后,可以在工具快捷按钮栏的下方看见目前选择的文件二、编译器的确认与切换在使用TBrun进行单元测试前需要先确认当前使用的编译器是否是正确的,如果不是正确的编译器可以切换为正确的编译器,其操作如下:1.确认编译器是否为目标编译器在Testbed中右上角的”Options Window”中要确认”Current Compiler”和”Default Compiler”所显示的内容,需要注意两点,“Current”和“Default”是否是目标编译器“Current”和“Default”是否是一样的,应该相同才可以2.切换编译器如果编译器不是用户想要的目标编译器需要切换,切换方法如下:点击Testbed菜单Configure—>Switch Compiler,在弹出窗口的编译器列表中选择目标编译器,然后点击Select按钮即可。
如果编译器选项中的”Current Compiler”和”Default Compiler”不一致,也需要设置为一致的,设置方式为点击Testbed菜单Configure—>Switch Compiler,在弹出窗口中点击Reset Current Set按钮来设置。
LDRA Testbed使用指南
图4
2.2.3
打开Configure下拉菜单,选中Static Options…,弹出Static Configuration对话框,如图5所示,对话框中包含以下设置:
指定Include文件搜索目录的Sysearch.dat文件
定义预处理器宏的Sysppvar.dat文件
工作路径
编码检查规则文件cpen.dat
LDRA Testbed使用指南
1
LDRA公司成立于1975年,具有丰富的软件质量保证和软件测试经验。LDRA工具套件功能强大、全面,不仅适用于主机平台的软件质量保证和软件测试,也适用于嵌入式软件的软件质量保证和软件测试。
LDRA为软件开发人员、测试人员以及项目管理人员提出了零缺陷软件开发(ZDSD),其工具套件能够完全集成并实现以下过程:
标准行第三列中的数用于某些标准的限幅系数,这些标准在文本描述中包含字符串“***”。
标准行第四列中的数用于程序内部表示本条标准,用户不能修改。
标准行第五列中的字符表示本条标准在什么分析中应用,S表示静态分析,C表示复杂性分析,D表示静态数据流分析,I表示信息流分析,X表示交叉引用,Q表示质量报告。
2.2.4
Files in Set对话框中添加源文件到新建的集合中,如图16所示,源文件添加完毕,单击OK按钮,LDRA Testbed将激活其向导对话框,进入分析域设置界面,请参考2.2.2分析域设置。
基于LDRA Testbed的软件静态测试研究与实现
3 ,6 ( n f:E p e i s n tB o a .:2 / 5 3 O e o ) x rs o i o o l n n e 8
/ ( M) S AT C T I VI AT1 : 4 S MI RA OL 0N 9 : S 3 :L gc lC nu cin ed b a k t . : 3 T C / 4 o ia O j n to sn e rc es 0 / ( )S { M TATI VI AT 0N : l4 C OL 1 l S: MI RA S
并且 也 执行 在互 相递 归调 用 的 函数 集 上 。
(0 函数 接 口分 析 :为 发现 代 码 缺 陷和 不 足 分 1)
析 每 个 函数 的接 口。然 后通 过 系统 调 用 图映射 接 口 信 息 , 目的是 为 了关 注集 成后 可能 产生 的缺 陷 。
4 运 行静 态 分析 项 目查看 测试 结果 )
通 过 LDRA Te t e s b d对 以 下 C 语 言 代 码 进 行 静 态 测 试 并 选 择 编 码 规 则 为 M IRA—C。 S
man) i( {
i t a 1 b= 0,= 0, n z , c d= l Z ,; Z = a & & b:
图 1 程 序 流 程 图
z = a && b:
/ ( )S M TATI VI AT1 C OL 0N : 1 S: I RA l4 M S
3 ,6 ( n f: x r s n i n tB o a . 1 T a / 5 3 O e o )E p e i S o o l n :6 so e
3 ,6 ( e o )E p e in i n tB oe n :6 / 5 3 On f: x rs o s o o la . 2 T a
基于LDRA Testbed的民用机载软件静态测试方法
基于 犔犇犚犃犜犲狊狋犫犲犱的民用机载软件静态测试方法
周 培
(中航雷华柯林斯 (无锡) 航空电子设备有限公司,江苏 无锡 214063)
摘要:静态测试作为软件测试的重要方法,是保证民用机载软件中安全关键软件质量的关键步骤;介绍静态测试的概念和方 法 ,采 用 自 动 化 分 析 方 法 ,基 于 软 件 分 析 工 具 LDRA Testbed从 主 要 静 态 分 析 、复 杂 度 分 析 、静 态 数 据 流 、 交 叉 索 引 、 信 息 流 和 数据对象分析六大部分完成软件的静态测试过程,探究其测试原理和关键标准文件的配置,生成相应的代码审查和测试度量报 告,以有效提高民用机载软件质量。
LDRA Testbed的静态分析支持代码程序 设计 标 准的规 定,生成关于复杂度和标准违反情况的分析报告,同时解 析源代码,生成后续插桩和动态分析阶段的内部工作文件, 其原理类似于编译器执行的语法分析。因此必须首先执行 静态分析。
LDRA Testbed的静态测试结构如图1所示,由 图可知 包含以下5种分析,并且这些分析方法必须按照顺序依次 执行:
1)主要静态分析 (MainStaticAnalysis) 2)复杂度分析 (ComplexityAnalysis) 3)静态数据流分析 (StaticDataFlow Analysis) 4)交叉索引 (CrossReference) 5)信息流分析 (数据对象分析)(InformationFlow A nalysis)
收 稿 日 期 :2019 01 28; 修 回 日 期 :2019 02 20。 作 者 简 介 :周 培(1990 ),女 ,宁 夏 固 原 人 ,初 级 工 程 师 ,主 要 从事民用机载软件的测试开发验证工作方向的研究。
LDRA Testbed单元测试操作步骤
使用LDRA Testbed对代码进行单元测试单元测试的主要操作:⑴被测对象选择⑵编译器的确认与切换⑶单元测试模块Tbrun的打开⑷测试序列(Sequence)的创建⑸测试用例的创建⑹测试用例的IO值设定⑺测试用例中桩的设定⑻测试用例的执行⑼测试结果的查看⑽测试用例的保存⑾测试用例中增加用户全局变量⑿测试用例创建向导中对全局数组和指针的处理详细操作如下:一、测试对象的选择在Testbed中C码中的“单元”就是一个函数,每次对一个函数的代码进行测试,测试时每次打开一个源文件。
打开程序LDRA Testbed,点击Testbed的菜单file 通过文件浏览窗口打开文件要分析的文件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c 。
点击select之后,可以在工具快捷按钮栏的下方看见目前选择的文件二、编译器的确认与切换在使用TBrun进行单元测试前需要先确认当前使用的编译器是否是正确的,如果不是正确的编译器可以切换为正确的编译器,其操作如下:1.确认编译器是否为目标编译器在Testbed中右上角的”Options Window”中要确认”Current Compiler”和”Default Compiler”所显示的内容,需要注意两点,“Current”和“Default”是否是目标编译器“Current”和“Default”是否是一样的,应该相同才可以2.切换编译器如果编译器不是用户想要的目标编译器需要切换,切换方法如下:点击Testbed菜单Configure—>Switch Compiler,在弹出窗口的编译器列表中选择目标编译器,然后点击Select按钮即可。
如果编译器选项中的”Current Compiler”和”Default Compiler”不一致,也需要设置为一致的,设置方式为点击Testbed菜单Configure—>Switch Compiler,在弹出窗口中点击Reset Current Set按钮来设置。
05.LDRA_Testbed中文使用指南1.2
7.2.5 察看质量报告.....................................................................25 7.2.6 察看其他分析结果.............................................................26 八.动态分析..............................................................................................28 8.1 进行动态分析................................................................................28 8.2 选择执行插装程序命令................................................................29 8.3 选择动态覆盖率分析选项............................................................30 8.4 执行分析........................................................................................31 8.5 执行插装程序................................................................................31 九.深层次的动态分析..............................................................................34 9.1 再次执行插装后的程序................................................................34 十. 以集(set)的方式进行分析 ..............................................................37 10.1 设置集属性..................................................................................37 10.2 往集里添加文件..........................................................................38 10.3 集的分析及结果察看..................................................................39 十一. 附注:数据流分析...........................................................................40 十二. 附注:信息流分析...........................................................................42 十三. 分析自己的代码...............................................................................44 13.1 概述..............................................................................................44 13.2 基本规则......................................................................................44 13.3 分析范围......................................................................................44 13.4 编译插装后的代码......................................................................46 13.4.1 概述...................................................................................46 13.4.2 初步...................................................................................46 13.4.3 自动过程...........................................................................46 13.4.4 进一步...............................................................................47
LDRA Testbed使用指南
21 02 S Label name reused。MISRA/DERA 12
标准行第一列中的数用于LDRA内部文档表示本条标准在cpen.dat文件中的序号,如果为0,则表示本标准和当前的实现无关,用户不能修改该数字。
标准行第二列中的数用于打开或关闭本条标准,0表示关闭,1表示打开。
分析域设置允许用户修改Sysppvar.dat和Sysearch.dat文件,如图3所示。
图3
不在源文件中定义而在编译器的选项中定义的宏可以在Sysppvar.dat文件中定义。单击Sysppvar编辑框附近的 按钮,选择Sysppvar.dat文件的存放位置,此时,后面的Create按钮自动变成Edit按钮,单击Edit按钮即可在Sysppvar.dat文件中添加宏定义了。宏定义的格式为:<名字> <数值>或<名字> (<参数1>, <参数2>,…)。
2
2.1
启动C/C++ LDRA Testbed后,首先进入其主界面,如图1所示:
图1
2.2
2.2.1
打开File下拉菜单,选中Select File…选项,或者单击工具栏上的 按钮,在弹出的Select
File对话框中浏览并选择进行分析的源文件,如图2所示:
图2
2.2
当加载新的文件或文件集合时,LDRA Testbed将激活其向导对话框,进入分析域设置界面,
LDRA Testbed使用指南
1
LDRA公司成立于1975年,具有丰富的软件质量保证和软件测试经验。LDRA工具套件功能强大、全面,不仅适用于主机平台的软件质量保证和软件测试,也适用于嵌入式软件的软件质量保证和软件测试。
LDRA_Testbed中文使用指南1.0
六.复杂度分析..........................................................................................18 6.1 运行复杂度分析并察看结果........................................................18 6.1.1 图形化显示分析结果.........................................................18 6.1.2 文本显示分析结果.............................................................20
7.2.5 察看质量报告.....................................................................25 7.2.6 察看其他分析结果.............................................................26 八.动态分析..............................................................................................28 8.1 进行动态分析................................................................................28 8.2 选择执行插装程序命令................................................................29 8.3 选择动态覆盖率分析选项............................................................30 8.4 执行分析........................................................................................31 8.5 执行插装程序................................................................................31 九.深层次的动态分析..............................................................................34 9.1 再次执行插装后的程序................................................................34 十. 以集(set)的方式进行分析 ..............................................................37 10.1 设置集属性..................................................................................37 10.2 往集里添加文件..........................................................................38 10.3 集的分析及结果察看..................................................................39 十一. 附注:数据流分析...........................................................................40 十二. 附注:信息流分析...........................................................................42 十三. 分析自己的代码...............................................................................44 13.1 概述..............................................................................................44 13.2 基本规则......................................................................................44 13.3 分析范围......................................................................................44 13.4 编译插装后的代码......................................................................46 13.4.1 概述...................................................................................46 13.4.2 初步...................................................................................46 13.4.3 自动过程...........................................................................46 13.4.4 进一步...............................................................................47
LDRA Testbed静态分析操作步骤
使用LDRA Testbed对代码进行静态分析静态分析的主要操作:①分析对象选择②分析前的设置③分析项的选择与分析过程④分析结果的查看详细操作如下:一、分析对象的选择,即如何选择你的分析对象(被分析的文件);有两种方式:单个文件分析和以集(set)的形式分析,以集的形式分析可每次分析多个文件1.单个文件分析选择打开程序LDRA Testbed,点击Testbed的菜单File select file 通过文件浏览窗口打开文件要分析的文件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c 。
点击select之后,可以在工具快捷按钮栏的下方看见目前选择的文件2.以集(set)的形式分析选择①创建集合(set),设置集合属性打开程序LDRA Testbed,点击Testbed的菜单Set Select/Create/Delete Sets 弹出set创建窗口在图中上部的Select/Create Sets区域写入set的名字,然后点击下部的Create按钮创建set,此时会弹出set的属性设置对话框,有两种属性可以设置”Group”和”System;”此两种属性的区别:Group 只是把set中的多个文件孤立的分析,不会分析文件间代码的相互关系,可作为批量分析使用。
System把set中的多个文件作为一个工程来分析,能够分析文件间的代码的关联,一般都会采用此种属性。
Set创建之后可在窗口中确认如下:其中demo为set的名字,system为set的属性,(0 files)代表set中目前没有文件②向集合中添加文件点击Testbed的菜单Set→List/Add/Remove Files in Sets 弹出添加文件窗口点击图中的Add按钮,通过文件浏览窗口可添加多个文件到set中。
二、分析前的设置在分析前需要对工具进行简单的设置,主要包括用户头文件的设置和编码规则集的设置。
Testbed静态测试使用指南V1.1
Testbed静态测试使用指南V1.1目录1Testbed功能介绍 (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)1Testbed功能介绍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.函数存在多个入口。
LDRA-Testbed静态分析操作步骤
使用LDRA Testbed对代码进行静态分析静态分析的主要操作:①分析对象选择②分析前的设置③分析项的选择与分析过程④分析结果的查看详细操作如下:一、分析对象的选择,即如何选择你的分析对象(被分析的文件);有两种方式:单个文件分析和以集(set)的形式分析,以集的形式分析可每次分析多个文件1.单个文件分析选择打开程序LDRA Testbed,点击Testbed的菜单file 通过文件浏览窗口打开文件要分析的文件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c 。
点击select之后,可以在工具快捷按钮栏的下方看见目前选择的文件2.以集(set)的形式分析选择①创建集合(set),设置集合属性打开程序LDRA Testbed,点击Testbed的菜单Set Select/Create/Delete Sets 弹出set创建窗口在图中上部的Select/Create Sets区域写入set的名字,然后点击下部的Create按钮创建set,此时会弹出set的属性设置对话框,有两种属性可以设置”Group”和”System;”此两种属性的区别:Group 只是把set中的多个文件孤立的分析,不会分析文件间代码的相互关系,可作为批量分析使用。
System把set中的多个文件作为一个工程来分析,能够分析文件间的代码的关联,一般都会采用此种属性。
Set创建之后可在窗口中确认如下:其中demo为set的名字,system为set的属性,(0 files)代表set中目前没有文件②向集合中添加文件点击Testbed的菜单Set→List/Add/Remove Files in Sets 弹出添加文件窗口点击图中的Add按钮,通过文件浏览窗口可添加多个文件到set中。
二、分析前的设置在分析前需要对工具进行简单的设置,主要包括用户头文件的设置和编码规则集的设置。
05.Testbed中文使用指南(2)
静态数据流分析
通常静态数据流分析追踪贯穿整个控制流结构的变量的值和对象。目前 没有数据流和数据关系的显示,因此,例如:这里没有类关系的图形显示。
动态分析
在静态分析中,得到的分析结果是跳过了所有的单个对象的。但是,动 态覆盖率分析呈现的仅仅是类的成员。因而,一个特殊类变量的一个定义可 能有缺陷而不是在相同类的另一个声明中。LDRA Testbed 仅报告这一种缺 陷。
Testbed 中文使用指南
测试策略概要
会把 F 和 G 当作系统调用的,在本质上忽略掉。结果就是 B、C、D 会被插 装,F、G 不被插装,E 可能会被插装也可能不被插装。整个系统可以这样 被划分为子系统再自底向上分层测试。这种方式可推荐使用在系统测试和子 系统的集成测试,主要的缺点是需要构造子系统的驱动。与 LDRA Testbed 的使用无关,在许多用例中构造这些驱动是一项明知的方针。
子中的模块 A)必须会被测试很多次,如果 A 很小,那么也就不重要了。
Testbed 中文使用指南
测试策略概要
第一块分割部分由模块 B 、H、C、D、E、I 和 J 组成,这个部分被编 译,从库中被连接。模块 A、F 和 G 对 LDRA Testbed 来说是可见的,那么 也能被测试。每一次仅有一块分割部分被隔离开,但是被分割开部分的大小 是任意的。当底层的模块 F 和 G 被充分测试完,那么 F 和 G 可以被预编译 和连接,然后被分割的第二部分 B、H 和 I 也可以被编译。 LDRA Testbed 分析了 A、C、D、E 和 J,这几个模块可以被测试,C、D、E和J依次被 预编译,LDRA Testbed 现在仅分析 A、B 、H 和 I,当这些被测试后,整个 工作就完成了。
24.如何使用testbed进行编码规则的定制和检查1.0
如何使用testbed进行编码规则的定制和检查本篇文档主要介绍如何利用LDRA Testbed进行编码规则的定制和检查,同时结合TBAudit中文报告生成工具生成中文质量报告。
一、使用Testbed进行编码规则的定制和检查LDRA Testbed提供两种方法定制编码规则:一种是通过编辑编码规则文件cpen.dat/cppen.dat实现;一种是编辑cReport.dat添加自己的规则集,下面我们分别介绍。
(一)编辑编码规则文件cpen.dat实现编码规则定制1.启动Testbed,在File菜单下选择Select File选项,选择要分析的文件;选择好要分析的文件,点击Select按钮完成。
2.点击菜单栏中的Configure,在下拉菜单中点击Static Options选项,将会出现如下窗口,点击cpen.dat后的Edit按钮,按照提示编辑cpen.dat。
若存在已编辑好的编码规则文件,可按旁边的浏览键直接指定该dat文件,则下面的3、4、5步可以省略。
3.使用编辑工具中的列模式将第10列全部置为“0”,“0”代表该条编码规则无效。
4.按照规则的中文描述,将与之对应的英文编码规则所在行该列置为“1”,“1”代表该条编码规则有效。
比如某单位编码规则“4.1.1.1 过程/函数名禁止重用”,通过比对编码规则文件,发现规则1与之对应,就作如下修改:5.以此类推,编辑后的编码规则文件如下。
6.同时,整理出对应的中文编码规则文件(TBAudit使用),以上为例,按GJB排序,无用的规则去除。
7.点击菜单栏中的Configure,在下拉菜单中点击Quality Report Options选项,将会出现如下窗口,在Programming Standard Model下拉框中选择“Standard”。
8.点击菜单栏中的Analysis,在下拉菜单中点击Select Analysis,将会出现如下窗口,选择前3项,点击Start Analysis按钮,开始进行静态分析。
LDRA-Testbed单元测试操作步骤.docx
使用LDRA Testbed对代码进行单元测试单元测试的主要操作:⑴被测对象选择⑵编译器的确认与切换⑶单元测试模块Tbrun的打开⑷测试序列(Sequence)的创建⑸测试用例的创建⑹测试用例的10值设定⑺测试用例中桩的设定⑻测试用例的执行⑼测试结果的查看(10)测试用例的保存(11)测试用例中增加用户全局变量(10测试用例创建向导中对全局数组和指针的处理详细操作如下:—、测试对象的选择在Testbed中C码中的“单元”就是一个函数,每次对一个函数的代码进行测试,测试时每次打开一个源文件。
打开程序LDRA Testbed,点击Testbed的菜单File^select file通过文件浏览窗口打开文件要分析的文件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c。
hit Analysis Tgrun IB evolveSelect Previously Analysed File.・・Select Fil« from MSVC v6 ProjectS«l«ct File ・r S«t fro* ICFSave File or Set to TCPRecent £il«s点击select 之后,可以在工具快捷按钮栏的下方看见目前选择的文件JC/C-+ LDRA Testbed Version 3.4仏 i975 .0514 LDRAltd.二、 编译器的确认与切换在使用TBrun 进行单元测试前需要先确认当前使用的编译器是否是正确的,如果不是正 确的编译器可以切换为正确的编译器,其操作如下:1 •确认编译器是否为目标编译器在 Testbed 中右上角的"Options Window "中要确认"Current Compiler"和"Default Compiler" 所显示的内容,需要注意两点, "Current"和"Default"是否是目标编译器"Current"和"Default"是否是一样的,应该相同才可以I C/C* ■ LORA Tntbed Vers on 94.6 C 1975 - 2014 LDRA Ltd Customs 10: 508867 - 20 Days Remaning*Jflrw T Bfvolve Individual ftetuits Set Retutts (oniiQur*Website (JHpJ 0 e 两禅 SH — <1 ■ 8 Q a S O S S D 9SS996 ^QQ<J20 >«€on4ihost id 1userU«conds): 900T«ltl licenses in "•: 1T^tal 0f lic«ns«s 1 ...L^cxinc oni»urc« £il«C 'LDKAJTxktr••\Ex ・plu\C.tbrg_・*f lu\G (roc«r ・ c startedFk*s« tinderL»・d 哼 source fil ・C \UXA.Vorktr««\Ex«»pl•s \C_tbrun_«xe»pl«s\Gp*^ctri c finuhtd2.切换编译器如果编译器不是用户想要的目标编译器需要切换,切换方法如下:点击Testbed 菜单Configure —>Switch Compiler,在弹出窗口的编译器列表中选择目标编 译器,然后点击Select 按钮即可。
基于LDRA Testbed的嵌入式软件静态测试
传 统 的 静 态 测 试 方 法 主 要 通 过 代 码 走 读 和代
—
3 6一
瓣 国鼷
码 审查 等 手 段来 查 找 被测 代 码 中的缺 陷 , 它 可 以充
wh i c h a r e g e n e r a t e d b y t h e t o o l ,t e s t i ng e n g i n e e r s ma k e t h e a na l y s i s o f t he p r o g r a m i n c o n s i d e r a t i o n o f t h e r e l e v a n t d o c ume n t s .Ev e n t u a l l y ,t he s t a t i c t e s t i n g r e p o r t i s s ub mi t t e d b y t he m t o t he d e v e l o p e r s .I t i s
Ke y wo r d s : p o we r e l e c t r o n i c ;c i r c ui t ; pr o t e c t ;o v e r he a t ;o v e r c u r r e n t ; o v e r v o l t a g e
中图分 类号 : T P 3 1 1 . 5 文献标 识码 : A 文 章编 号 0 2 1 9 - 2 7 1 3 ( 2 0 1 5 ) 0 4 — 0 3 6 — 0 0 5
收 稿 日期 : 2 0 1 5 — 0 4 — 0 1
或评估 程 序代码 的过程 。该 过程试 图在软件 开 发 的
早期就能发现程序 中尽可能多的潜在缺陷或错误 。 因此 ,对 于软件可靠性要求非常高 的嵌入式软件 ,
Testbed中文简介教程文件
LDRA公司是专业性软件测试工具与测试技术、咨询服务提供者,成立于1975年,具有丰富的软件测试经验,其总部位于英国利物浦,中国设有总代理上海创景计算机系统有限公司。
其旗舰产品Testbed/TBrun功能强大、功能全面、易于使用,不仅适合于主机平台软件测试,同时适合于嵌入式软件测试,已成功地应用于国内各大研究机构、软件测试部门。
LDRA Testbed/TBrun 软件测试产品功能介绍一、静态分析功能1、编程标准编程标准验证是高可靠性软件开发不可缺少的软件质量保证方法,使用LDRA Testbed 自动地验证应用软件是否遵循了所选择的编程规则。
编程规则由软件项目管理者根据自身项目的特点并参考现有的成熟的软件编程标准制定,如DERA(欧洲防务标准),MISRA(汽车软件标准),LDRA Testbed依据此规则搜索应用程序,并判断代码是否违反所制定的编程规则。
LDRA Testbed报告所有违反编程规则的代码并以文本方式或图形反标注的方式显示。
测试人员或编程人员可根据显示的信息对违反编程规则的代码进行修改。
2、软件度量分析、质量标准验证对于软件开发工程师、项目负责人及高级管理者来说,软件质量的管理与监控是非常困难的且费时。
LDRA Testbed 很好地解决了这一问题,使得管理者很容易地收集正在开发的软件系统的相关信息并判断软件是否满足软件质量标准要求,从而达到对软件项目的质量跟踪与控制,用户可基于现行软件标准自行定义适合本系统或项目的软件质量模型。
LDRA Testbed 支持下列主要软件度量元分析:* 控制流结点度量(Control Flow Knots);* LCSAJ 密度度量(LCSAJ Density);* 扇入/扇出度量;* 循环深度度量;* McCabe 圈复杂度;* Halstead软件科学度量;* McCabe Essential复杂度;* 注释行度量;* 代码可达性度量;* 等等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用LDRA Testbed对代码进行静态分析静态分析的主要操作:①分析对象选择②分析前的设置③分析项的选择与分析过程④分析结果的查看详细操作如下:一、分析对象的选择,即如何选择你的分析对象(被分析的文件);有两种方式:单个文件分析和以集(set)的形式分析,以集的形式分析可每次分析多个文件1.单个文件分析选择打开程序LDRA Testbed,点击Testbed的菜单File select file 通过文件浏览窗口打开文件要分析的文件,如C:\LDRA_Workarea\Examples\C_testbed_examples\Testrian\Testrian.c 。
点击select之后,可以在工具快捷按钮栏的下方看见目前选择的文件2.以集(set)的形式分析选择①创建集合(set),设置集合属性打开程序LDRA Testbed,点击Testbed的菜单Set Select/Create/Delete Sets 弹出set创建窗口在图中上部的Select/Create Sets区域写入set的名字,然后点击下部的Create按钮创建set,此时会弹出set的属性设置对话框,有两种属性可以设置”Group”和”System;”此两种属性的区别:Group 只是把set中的多个文件孤立的分析,不会分析文件间代码的相互关系,可作为批量分析使用。
System把set中的多个文件作为一个工程来分析,能够分析文件间的代码的关联,一般都会采用此种属性。
Set创建之后可在窗口中确认如下:其中demo为set的名字,system为set的属性,(0 files)代表set中目前没有文件②向集合中添加文件点击Testbed的菜单Set→List/Add/Remove Files in Sets 弹出添加文件窗口点击图中的Add按钮,通过文件浏览窗口可添加多个文件到set中。
二、分析前的设置在分析前需要对工具进行简单的设置,主要包括用户头文件的设置和编码规则集的设置。
1.基本的静态设置,包含头文件和编译宏设置。
点击Testbed菜单configure→static option,弹出static analysis optin对话框,在选项卡Include files中的内容是对头文件的设置,可关注的设置有,“Analysis Include files” 区域设定头文件的展开方式(即分不分析头文件),建议选择第二种Analysis the first instance of each found include“Interactive include file analysis” 区域设定代码中出现头文件包含语句时,工具与用户的交互方式,建议选择第三种Display dialog only wheninclude file not found“Include Search Directories” 区域设置用户头文件的查找目录和系统头文件的处理方式按钮Search Options可设置用户头文件的查找目录,可通过浏览方式添加目录按钮Systen Include Search可设置系统头文件的展开方式,建议设为Don’t Expand在选项卡macros中设定用户代码编译宏的处理方式“sysppvar” 区域是对编译宏的定义设置,对于在编译命令中定义的宏,而在代码中使用此宏影响代码的编译的情况,需要用户把此宏添加到工具的设置文件中,可点击Edit Default按钮打开文件sysppvar.dat,在此文件中添加相应的宏定义,宏定义的方式可通过点击蓝色的Example显示样例;“Interactive conditional Preprocessing Options” 区域是设置针对代码中未识别的宏的处理及交互方式;如果选中” Interactive Preprocessing”,当出现未识别的宏时会弹出对话框,让用户定义此宏,如果不选当出现未识别的宏则不弹窗口;”AutoMacro”设定宏的自动定义处理方式,”Enable – promt for macro vaule” 弹窗提示并让用户指定宏值”Enable – no promt, use default” 不弹窗提示,使用默认值”Disable – stop static analysis” 弹窗,并停止分析2.代码评审报告设定。
在Testbed菜单configure code review report options点击,弹出code review report 对话框.在选项卡Report based Configuration中”Programming Standards Model”区域中选择你要生成编码规则检查结果报告所使用的规则集的名字;在”Additional Detail for each Standards Violation”区域中设定在代码评审结果报告是否包含原代码行号和格式化后的代码行号。
在选项卡Data Files中可以实现对编码规则集的定制,在”Standards Model Editor”区域点击按钮”Launch Editor”可以打开编码规则图形化定制的画面其中列代表的是具体的规则条目,行代表的是规则集的名称,通过选择框的选择可以把某条规则包含或剔除到规则集内。
3.质量评审报告设定在Testbed菜单configure→quality review reoport options点击,弹出quality review report 对话框,在”Metpen configuration”区域可以设定质量评审报告中每个度量元的上下限的阈值,即可定制质量模型以便生成质量评审报告,点击” C:\LDRA_Toolsuite\metpen.dat”后的”Edit”按钮,可打开质量模型配置文件,修改此文件中度量元的上下限阈值即可修改质量模型。
4.数据对象分析报告设定。
在菜单configure→data object analysis reoport options点击,弹出data object analysis configuration 对话框, 设定数据对象分析报告中显示的对象范围。
三、分析项的选择与分析过程在Testbed菜单analysis select analysis点击,弹出select analysis 对话框,在此对话框中选择要执行的静态分析项:main static analysis、complexity analysis、static data flow analysis、cross reference、information flow analysis、data object analysis,然后点击start analysis 按钮进行分析。
四、分析结果(报告)查看1.单个文件结果查看点击Testbed菜单Individual results可看到下拉项Source code、Text results、Graphical results分别显示了分析结果,这三个下拉项均可展开,便于用户查看详细的分类结果。
文本化的分析结果:图形化的分析结果2.集(set)的结果查看点击Testbed菜单Set results可看到下拉项Text results、Graphical results分别显示了分析结果,每个下拉项均可展开,便于用户查看详细的分类结果。
3.报告内容介绍报告内容文本报告Analysis scope report 分析范围报告Test manager report 测试管理报告,主要包含代码评审和质量评审的总体结果Code review report 代码评审报告,包含编程规范检查的违反情况Quality review report 质量评审报告,包含每个函数的清晰性、可维护性和可测试性总体指标,以及质量度量标准的每项度量值(格式化代码信息、函数信息、函数注释信息、注释与可执行代码比例信息、复杂度信息、霍尔斯特德度量信息、循环嵌套信息、LCSAJ及不可达代码信息和数据流信息)Design review report 设计评审报告,包含函数的入参及返回值的信息Reformatted code 格式化后的代码,可以查看规则违反情况LCSAJ report LCSAJ报告,包括代码中的LCSAJ的数量及划分细节LCSAJ test case planner report 此报告以函数为单位列出LCSAJ的详细情况,并给出执行此LCSAJ所有满足的条件,可指导用户设计测试用例增加LCSAJ的覆盖率Data flow analysis report 数据流报告,包含变量的使用异常、函数接口参数、全局变量和函数调用关系Procedure header comment 函数头注释,可以自动生成函数头注释便于用户使用User defined type report 用户自定义类型报告Cross reference report 交叉索引报告,包括所有数据项的分析,类型属性Information flow analysis report 信息流报告,对函数中变量的依赖关系分析,包含强依赖、弱依赖、条件依赖,强定义、弱定义Data object analysis report 数据对象报告,根据单个或一组对象信息获取此对象的所有数据分析情况图形报告Static callgraph 静态调用关系图,反应函数的层次及调用关系Static flowgraph 静态控制流图,反应函数内部的控制流程Standard kiviat 标准kv图Clarity kiviat 清晰性kv图Maintainability kiviat 可维护性kv图Testability kiviat 可测试性kv图Static bar charts 静态柱状图基本结点基本复杂度结点复杂度最大嵌套深度第1层间隔数目基本块可执行格式化代码行函数注释。