LDRA TestBed在某型机载火控雷达显控软件测试中的应用
无人机飞行控制软件测试技术研究

南京航空航天大学硕士学位论文摘要飞行控制系统是保证无人机飞行安全和完成预定任务的关键系统。
无人机对各种机载设备的控制指令都是由飞行控制软件发出,一旦软件出现问题,后果不堪设想,而软件测试是保证软件质量的必要手段,所以必须对无人机飞行控制软件进行充分、系统的测试。
本文较深入地研究了运用LDRA-Testbed/TBrun对无人机飞行控制软件进行测试的技术。
主要是进行基于LDRA-Testbed的静态测试工作和基于LDRA-TBrun的混合模式的集成测试工作,成功地把软件测试的各种思想、概念和LDRA-Testbed/TBrun测试工具相结合起来,达到了很好的测试效果。
首先介绍了软件测试的基本理论和基本方法,嵌入式软件测试的特点,以及软件测试工具的种类,重点介绍了LDRA-Testbed/TBrun的基本情况。
其次研究了无人机飞行控制系统的原理和无人机飞行控制软件的原理、结构及特点,提出了其测试工作的整体模型,重点研究了单元测试和集成测试的具体策略。
单元测试策略主要进行了任务和过程方面的分析,集成测试策略则是从原则和工作安排的角度进行了研究。
在此基础上较深入地进行了基本静态分析、复杂度分析、静态数据流分析,数据的图形化显示和质量报告等6个方面的静态测试技术研究,并对静态测试的工作内容选择、测试结果分析、测试报告制定作了标准化规定。
最后研究了运用LDRA-TBrun进行无人机飞行控制软件集成测试工作。
重点研究了包含自底向上、自顶向下两个集成阶段的混合模式的测试工作,以及模块划分、驱动和桩模块的设计,通过实际软件测试过程,验证了本文研究成果的正确性和有效性。
关键词:无人机,飞行控制软件,软件测试,静态测试,集成测试ABSTRACTThe flight control system (FCS) is the key system to make safe of the flighting of unmanned air vehicle(UA V), and to act the assignment being prearranged. The contronl instructions of the on-board equipments on UA V are sent out by computer software. Once the failure of software appears, the result will be so terrible that we dare not think about. Software testing is a necessary method to guarantee software quality, so UA V FCS software must be tested strictly and thoroughly.In this paper, the testing technology based on LDRA-Testbed/TBrun of UA V FCS software was researched deeply, and the main work included static testing based on LDRA-Testbed and integrated testing of mix model based on LDRA-TBrun. Various thoughts and concepts of software testing and test tool of Testbed/TBrun were successfully combined, and came to a very good test result.Firstly, the basic theories and basic methods of software testing, the characteristics of embeded software testing were introduced, and the basic instance of LDRA-Testbed/TBrun was introduced mainly.Secondly, the theory of UA V FCS and the theroy, architecture, characteristics of UA V FCS software were studied. Then an integrated model of test was put forward,and a kind of testing strategy for unit testing and integrated testing was researched particularly and each. Tasks and testing process of unit testing were analyzed, and the perspective in testing principle and arranging task of integrated testing were researched mainly. Based on this, static testing technology such as basic static analysis, complexity analysis, static data flow analysis, graphic display of data, quality report, and etc. were studied deeply. Then the work content, analysis of testing result and testing report were standardized.Finally, the integrated testing of UA V FCS software based on LDRA-TBrun was researched. The mix model include bottom-up stage and top-down stage was studied mainly, and the test method like module division, design of drive model and stub model was studied primarily. The fact of the testing process proves the correctness and validity of the research results.Key Words:Unmanned air vehicle, Flight control system, Software testing, Static testing, integrated testing图清单图3.1 某型无人机飞行控制系统组成图 (20)图3.2 无人机工作原理图 (22)图3.3 控制律解算模块设计流程 (25)图3.4 导航过程转换图 (27)图3.5 自主导航过程 (27)图4.1 改进的V模型图 (30)图4.2 单元测试过程图 (32)图4.3 主机平台软件集成测试图 (34)图4.4 宿主/目标机平台软件动态测试图 (34)图5.1 导航模块格式化代码界面截图 (38)图5.2 导航模块编码规则验证截图 (40)图5.3 五种结构的控制流图 (41)图5.4 着陆子模块控制流图 (42)图5.5 节点产生示意图 (42)图5.6 导航模块节点复杂度柱状图 (43)图5.7 某程序有向图 (44)图5.8 导航模块圈复杂度柱状图 (46)图5.9 导航模块基本复杂度柱状图 (47)图5.10 Halstead复杂度度量 (48)图5.11 LCSAJ报告总述截图 (49)图5.12 最大LCSAJ密度 (50)图5.13 数据流异常报告截图 (52)图5.14 系统调用图 (53)图5.15 标准Kiviat图 (55)图5.16 清晰性Kiviat图 (56)图5.17 可维护性Kiviat图 (56)图5.18 可测试性Kiviat图 (57)图5.19 质量报告截图 (58)图6.1 自顶向下集成方法示意图 (64)图6.2 自底向上集成方法示意图 (65)南京航空航天大学硕士学位论文图6.3 自主导航模块系统调用图 (67)图6.4 自主导航模块内部函数模块系统调用图 (67)图6.5 自主导航内部函数模块系统调用简化图 (68)图6.6 自主导航模块软件集成测试过程示意图 (69)图6.7 TBrun界面 (70)图6.8 模块族1系统调用图 (71)图6.9 TBrun选择生成桩界面 (72)图6.10 定义桩函数选择桩函数文件的TBrun界面 (73)图6.11 成功用桩文件插桩后的TBrun界面 (73)图6.12 模块M1、M2输入输出树状显示截图 (74)图6.13 驱动模块D1参数输入输出TBrun界面图 (76)图6.14 输入形式参数的类型和名字后的TBrun界面 (78)图6.15 TBrun打桩桩体编辑界面 (79)图6.16 TBrun打桩输入返回值和返回类型界面 (81)图6.17 TBrun打桩后界面 (81)无人机飞行控制软件测试技术研究表清单表5.1 程序圈复杂度与程序风险的关系表 (45)承诺书本人郑重声明:所呈交的学位论文,是本人在导师指导下,独立进行研究工作所取得的成果。
Testbed中文简介

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复杂度;* 注释行度量;* 代码可达性度量;* 等等。
3、静态数据流分析LDRA Testbed 分析软件中全局变量、局域变量及过程参数的使用状况,并以图形显示、HTML或ASCII文本报告方式表示,清晰地识别出变量使用引起的软件错误,此种方法既可使用于单元级,亦可使用于集成级、系统级。
研究结果表明这种技术,即为软件测试工程师所熟知的数据流分析技术(Data Flow Analysis),是查找软件错误最有效的途径或方法之一。
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分析域设置。
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软件的单元测试

基于LDRA Testbed软件的单元测试单元测试是软件开发过程中不可或缺的一环,它能够发现代码中的错误和缺陷,提高软件质量和可靠性。
LDRA Testbed软件是一个集成开发环境(IDE),能够帮助开发人员进行单元测试和代码分析。
本文将介绍LDRA Testbed软件的基本原理、功能、应用和优点。
一、基本原理LDRA Testbed软件的基本原理是将代码分析为结构章程(Structural Coverage),并将其转换为函数测试用例。
开发人员可以使用该软件生成测试用例,以测试单元代码是否符合预期要求。
这些测试用例能够包含各种测试类型,如基本路径覆盖、条件覆盖、分支覆盖等。
通过这些测试用例,开发人员能够发现代码中的错误和缺陷,提高软件质量和可靠性。
二、功能LDRA Testbed软件能够实现以下功能:1.静态分析:能够分析代码并检查其是否符合规范。
这个过程能够发现一些潜在的安全漏洞和重构机会。
2.代码覆盖率:能够帮助开发人员检查测试用例是否完全覆盖单元代码,并生成测试报告。
3.自动化测试:能够快速、准确地测试代码,提高软件生产效率。
4.符号执行:通过符号计算机程序运行,能够模拟软件运行过程,发现软件问题。
5.程序执行跟踪:能够记录代码执行时的控制流,与图形界面结合,更容易定位问题。
6.缺陷管理:能够管理问题和工件,建立组织工件和缺陷报表的能力。
三、应用LDRA Testbed软件适用于以下场景:1.嵌入式开发:对于嵌入式系统,测试时要求测试代码的完整性、效率、可靠性和正确性,LDRA Testbed软件能够帮助开发人员实现这些要求。
2.医疗设备:对于一些医疗设备,在测试代码时要求高度安全性和健壮性,使用LDRA Testbed软件可以有效提高测试效率。
3.汽车电子:对于汽车电子产品,要求测试涵盖复杂的逻辑,同时需要高效且可靠。
使用LDRA Testbed能够加快开发和测试速度,帮助开发人员更好地实现目标。
基于LDRA Testbed的飞机中央维护系统覆盖测试

国际航 空无 线 电委 员会 ( T A) 对航 空 电子 系 RC 针
统 的开 发 制 定 了 D O一18 ( o w r os ea o n 7 B Sf a C ni rt n i t e d i Aron ytm n q im n C rf a o )标 准 。在 i reS s s dE up e t et c t n b e a i i i
正 常并 且识 别 L U R s是 否 需 要 替 换 , 系 统 将 通 过 飞 该 机 座舱 中的多 功 能显 示 器 把 L U R s的故 障诊 断信 息 、
飞机 中央维 护 系统 是 机 载 软 件 中的一 部 分 , 了 为 确 保它 的高 质量 和 高 可靠 性 , 研 发 和 测 试 过 程 中必 在
发 动机 维护 信 这些 结 果 下 传 至 地 面站 , 维修 人 员 提前 做 使
须 遵循 航 空 软 件 标 准 D O一18 并 且 要 利 用 专 业 化 7 B,
的测试 软件对 系 统 软 件经 过 严 格 的 逐 级测 试 , 能应 才
第4卷 0
第 5期
航 空 计 算 技 术
Ae o utc lCo p tng Te hn q e r na i a m u i c i u
Vo. 0 No 5 14 . S p. 01 e 2 0
21 0 0年 9月
基 于 L R ete D A T s d的 飞 机 中央 维 护 系统 覆盖 测 试 b
全 , 旦软 件 出现 问题 , 往会 造成灾 难 性 的后 果 。 一 往
LDRATestbed动态分析

LDRATestbed动态分析LDRA Testbed 动态分析® LDRA Tool Suite Technical Descriptionv7.3.1LDRA Product Brochure v6.1什么是动态分析动态分析使用测试数据集去执行软件,来观察软件的行为,生成测试覆盖报告。
对源代码的这种评估分析能保证达到测试标准的要求,并且辅助捕捉/回放工具的使用。
LDRA Testbed动态分析为苛刻性代码分析提供达到质量标准的手段,能改进代码效率,最小化回归测试成本,并且侦测软件中的缺陷。
在软件开发和维护期,使用动态分析技术有助于提高程序的健壮性和可靠性。
优点是什么?•执行高质量测试•减少回归测试成本•鉴别软件异常和缺陷•产生全面的可度量的测试数据集合,包含测试输出•降低维护费用至最少•识别系统/程序不必要,可移除的部分•确保系统可靠,零缺陷何时使用动态分析?动态分析通过在测试中选择测试数据探究应用软件的语义。
从应用软件静态分析中构建的控制流和数据流模型与运行时刻产生的实际控制流和数据流相比较,这就能检查出是静态分析出错还是动态分析出错。
动态分析对高可靠性的软件应用非常有效,是安全苛刻性的航空电子软件测试的首要方法,广泛地用于军方,安全和任务苛刻的软件。
除了上面提到的安全苛刻性工业领域,动态分析也适用于金融和通信领域。
关键在于工具能带来有效的改进过程,它包括实际的成本节省,对客户投资的回报,从而导致巨大的竞争优势。
LDRA 工具包的动态覆盖分析动态分析的结果可以根据设计需求达到的不同要求进行选择。
最通常的要求是达到控制流覆盖水平。
LDRA 工具包使用以下几种类型的覆盖:可度量的覆盖有下列级别:•语句覆盖•分支/判定覆盖•LCSAJ 覆盖•MC/DC 覆盖•动态数据流覆盖。
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工具套件功能强大、全面,不仅适用于主机平台的软件质量保证和软件测试,也适用于嵌入式软件的软件质量保证和软件测试。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LDRA TestBed在某型机载火控雷达显控软件测试中的应用杨晶
【摘要】LDRA TestBed是一种在业务软件中广泛应用的高可靠性自动化测试工具.文章通过某型机载火控雷达综合显控软件测试实例,详细阐述了该工具在软件测试中的具体使用方法,介绍了如何进行测试程序的插桩及驱动模块的编写,研究了测试结果的输出文档、图表、分析方法及其在软件质量度量方面的应用,并总结了TestBed在软件自动化测试过程中的常见注意事项.
【期刊名称】《江苏科技信息》
【年(卷),期】2017(000)022
【总页数】4页(P42-45)
【关键词】软件测试;动态测试;静态测试;覆盖率分析
【作者】杨晶
【作者单位】江苏金陵机械制造总厂,江苏南京 211100
【正文语种】中文
随着计算机技术在军用机载火控雷达系统中的快速发展,原本作为硬件附属的软件越来越独立化、模块化,尤其是综合显控系统更是逐渐替代了原本是硬件的诸如手柄、操纵杆、操作键盘等单元。
软件规模随之增大,代码的复杂程度也不断加大,软件的可靠性对系统的影响更加突出,对软件进行全面的测试势在必行。
当今,机载火控雷达系统软件技术的发展日新月异,仅靠软件开发或测试人员的人工统计分析,已不能有效地对软件进行质量及可靠性评价,因此在软件测试中采用
辅助测试工具显得尤为重要[1]。
TestBed由英国LDRA公司开发,主要用于软件测试与软件维护,以最终提高软件产品质量。
整个工具套件的特点及优势可以归纳为对以下六大活动提供支持[2]。
(1)代码评审。
LDRA TestBed提供强大的编码规则检查功能,实现了编码规则检查过程的自动化,帮助用户提高编码评审工作的效率和质量。
(2)质量评审。
提供对软件质量的度量,可以快速地以可视化的方式了解系统的复杂性。
该特征是衡量软件的清晰性、可维护性和可测试性的元素;提供详细的彩色函数调用关系图和程序流程控制图,生成软件质量文档报告。
(3)设计评审。
目的是对源代码与设计需求之间的一致性进行评审。
帮助软件设计人员验证设计说明是否被正确的编码实现。
(4)单元测试。
在软件生命周期中随着软件开发的进行,发现错误以及修正错误的成本越来越高。
单元测试为开发团队提供了在初始编码阶段发现和修正错误的方法。
而LDRA TestBed实现了单元测试过程的自动化,极大提高了单元测试的效率。
(5)测试验证。
TestBed的代码覆盖率分析能让开发者直观、详细地了解被测试代码的测试覆盖情况,并通过进一步分析,明确需要如何补充测试用例来验证没有被测试执行过的代码。
(6)测试管理。
LDRA TestBed工具套件生成的测试文档,易于实现对复杂系统的理解、归档和维护,轻松实现测试、源代码修改、再测试及确认,达到高效的测试管理。
2.1 静态测试分析
LDRA TestBed可对单个类(cpp)、多个类(set)或整个工程(system)进行静态分析,包括主静态分析(Main Static Analysis)、复杂度分析(Complexity Analysis)、静态数据流分析(Static Data Flow Analysis)等。
需要注意的是,在进行静态测试时,应采用未经插桩的原始项目工程作为测试对象,静态测试流程如图1所示。
2.1.1 函数调用关系
函数调用关系图可方便地“自顶向下”分析程序的框架,也可“自底向上”查看函数的调用深度。
因为整个项目的调用关系比较杂乱,在此截取一个分支,以示说明,如图2所示。
其中,白色背景色为自编函数,灰色背景色为系统函数,测试人员可以快捷定位。
2.1.2 软件质量度量指标
通过基于McCabe的软件质量度量模型对程序的分析,得到程序总体质量的Kiviat图,以图例的方式显示哪些度量指标超出了预设的上下限指标[3]如图3
所示。
其中,每一轴代表一种度量元,黑色部分表示符合标准,灰色部分表示不符合。
每一个模块的具体度量数据可通过生成的度量报告进行分析,主要有以下五个指标:圈复杂度(V(G)=e-n+2,e表示控制流图中边的数量,n表示节点数量)、基本圈复杂度(通过结构化流程简化后,最终圈复杂度)、扇入(指某一过程/函数
被多少过程/函数调用)、扇出(指某一过程/函数调用多少过程/函数)、可执行
代码行数。
表1列出了CRecordDialog类中函数各个指标,根据测试预设的指标,其中通过的为P,不通过的为F。
通过表1可以分析出,函数OnPlay()各项指标均超过预设指数,说明该函数过于复杂,建议拆分为多个函数,以降低函数复杂度,提高可维护性和可测试性。
2.1.3 源代码编码规则
LDRA TestBed的编码规则设定,是以规则集的方式存放在程序安装目录中,本文介绍的火控雷达综合显控软件是基于C++语言开发的,其规则存放在“/ Testbed/Cpp”目录下的CPPPEN.DAT文件中(注:C语言的规则存放在
“/Testbed/C”目录下的CPEN.DAT文件中)。
在进行常规测试时,采用默认规则即可,若有特殊情况需要添加规则,可在该文件中进行相关添加设置。
测试结束后,单击Individual Results菜单,选择Text Results,选择Overview Report(HTML)。
打开报告,可看到关于指定的编程规则passed或failed的结果如图4所示。
2.2 动态测试分析
动态测试是LDRA TestBed的一项重要功能,它有助于优化代码、提高代码利用效率,也有助于优化测试、减少测试费用,对于高可靠、高安全性的机载火控雷达显控软件系统的测试具有重要作用。
进行动态测试前,首先要对源程序进行插桩和添加驱动,主要输出物是语句覆盖率、分支覆盖率以及动态流程图等。
动态测试流程如图5所示。
2.2.1 程序插桩与驱动添加
当静态测试结束后,可通过静态测试的函数调用关系图确定被测函数主体,根据程序流程结构在程序的特征点插入桩代码,插桩过的代码在执行时将特征值记录保存供测试分析,而插桩代码将特征值写入历史文件。
同时,在程序模块的入口,添加驱动单元,以验证程序执行的正确性。
具体插桩和添加驱动的流程如图6所示。
2.2.2 函数动态流图
当测试项目的动态分析结束后,在整个系统的动态流图上,左键点击所要查看的函数(在本实例中,以函数OnBtJlcy()为例),便可得到如图7所示的该函数动态流图;在动态流图Option选项中,点击Add Annotations,即可添加节点注释,查看函数源码的详细执行过程。
2.2.3 动态覆盖率分析
在用LDRA TestBed进行动态覆盖率分析时,主要查看语句覆盖(被测软件在执行时语句执行行数比例)和分支覆盖(被测软件实际执行分支与总分支数之比)。
图8是各个cpp或类的语句覆盖率和分支覆盖率,若欲查看各个函数的覆盖率,
可点击其所在的cpp进入详细查看。
进行多次累加用例测试,直到语句覆盖率和分支覆盖率均达到100%,表示覆盖率测试通过。
通过使用LDRA TestBed对机载火控雷达综显软件进行测试后,更加直观地认识
到了该工具的方便与快捷。
对于分析软件开发、维护过程中遇见的问题,具有很大的帮助。
在测试期间,也有一些浅薄的心得与体会,与大家分享:(1)如果源文件已经分析过了,相应的工作文件、结果文件便被自动记录,因此,再次进行分析时,需要在Analysis菜单下选择Delete Workfiles对话框,清除相应的工作文件,以便于进行新一轮测试分析。
(2)在进行静态分析时,需要采用原始工程,这样最能准确地分析出程序中的潜在问题,虽然在实际操作中会遇到原始代码量大、测试速度慢等问题,但毕竟静态测试次数相对较少,可将测试结果保存下来分析。
(3)在动态测试时,需要进行代码插桩和驱动添加,而且动态测试次数相对频繁,所以,用原始工程进行插桩测试时会很慢,因此,可以适当考虑分模块、分工程插桩的办法,以提高测试效率。
(4)完成软件测试后,应及时保存测试生成报告和文档,将测试用例进行归类备份,以便在软件升级后方便做回归测试。
【相关文献】
[1]黄荦,丁立冬.基于LDRA TestBed的民用机载软件结构覆盖率分析流程研究[J].航空标准
化与质量,2014(4):26-29.
[2]王玮.基于LDRA TestBed的软件完整性静态测试方法研究[J].电脑与电信,2014(4):
49-51.
[3]李中萍,岳海,薛静.LDRA TestBed在航天软件测试中的应用[J].航天控制,2007(2):73-77.。