LDRA公司是专业性软件测试工具与测试技术、咨询服务提供者,成立于1975年,具有丰富的软件测试经验,其总部位于英国利物浦,中国设有总代理上海创景计算机系统有限公司。
其旗舰产品Testbed/TBrun功能强大、功能全面、易于使用,不仅适合于主机平台软件测试,同时适合于嵌入式软件测试,已成功地应用于国内各大研究机构、软件测试部门。
LDRATestbed/TBrun软件测试产品功能介绍一、静态分析功能1、编程标准编程标准验证是高可靠性软件开发不可缺少的软件质量保证方法,使用LDRATestbed自动地验证应用软件是否遵循了所选择的编程规则。
编程规则由软件项目管理者根据自身项目的特点并参考现有的成熟的软件编程标准制定,如DERA(欧洲防务标准),MISRA(汽车软件标准),LDRATestbed依据此规则搜索应用程序,并判断代码是否违反所制定的编程规则。
LDRATestbed报告所有违反编程规则的代码并以文本方式或图形反标注的方式显示。
测试人员或编程人员可根据显示的信息对违反编程规则的代码进行修改。
2、软件度量分析、质量标准验证对于软件开发工程师、项目负责人及高级管理者来说,软件质量的管理与监控是非常困难的且费时。
LDRATestbed支持下列主要软件度量元分析:*控制流结点度量(ControlFlowKnots);*LCSAJ密度度量(LCSAJDensity);*扇入/扇出度量;*循环深度度量;*McCabe圈复杂度;*Halstead软件科学度量;*McCabeEssential复杂度;*注释行度量;*代码可达性度量;*等等。
3、静态数据流分析LDRATestbed分析软件中全局变量、局域变量及过程参数的使用状况,并以图形显示、HTML或ASCII文本报告方式表示,清晰地识别出变量使用引起的软件错误,此种方法既可使用于单元级,亦可使用于集成级、系统级。
研究结果表明这种技术,即为软件测试工程师所熟知的数据流分析技术(DataFlowAnalysis),是查找软件错误最有效的途径或方法之一。
4、信息流分析(为Tbsafe选件)信息流是在数据流分析基础上对数据变量之间的关系作进一步分析,此分析方法已列入高可靠性软件测试标准,为DEF-STAN00-55软件测试标准所采用。
二、动态分析功能1、源代码自动插装LDRATestbed可自动对被测软件进行代码插装,以获得被测软件的动态执行信息,供Testbed作动态测试分析。
被插装的代码可为主机平台软件,亦可为嵌入式目标机平台。
2、覆盖率分析如果在进行软件测试时不对代码覆盖率进行监控,有可能在未被执行的代码中遗留软件错误,因此在软件测试过程中有效地监控代码覆盖率是提高软件测试有效性的一项重要途径。
LDRATestbed可提供如下代码覆盖率指标:*语句覆盖(Statement);*分支/判定覆盖(Branch/Decision);*LCSAJ覆盖(LinearCodeSequenceandJumpSegents);*过程/函数调用覆盖(Procedure/FunctionCall);*分支条件覆盖(BranchCondition);*分支条件组合覆盖(BranchConditionCombination);*修正条件/判定覆盖(ModifiedCondition/Decision);*动态数据流覆盖(DynamicDataFlow)。
通过LDRATestbed对被测软件进行代码覆盖率指标分析,可制定出相应的软件测试策略以达到期望的代码覆盖率要求。
这将大大提高对被测软件(或代码)的信心。
3、断言分析LDRATestbed提供断言分析功能,使用此功能测试人员可确认被测软件在动态测试过程中满足某特定状态或条件。
4、测试用例分析使用此功能对测试数据或用例进行效率分析,从而可优化测试。
三、图形化显示LDRATestbed产生的静态、动态结果均可以图形化显示,直观方便。
支持的图形化显示功能有:*柱状图(BarCharts);*流程图(Flowgraphs);*调用图(Callgraphs);*Kiviat图。
四、LDRATBrun单元与集成级软件测试单元级软件测试已经被公认为行之有效的软件测试方法,使用单元级软件测试可在软件开发早期发现软件故障或缺陷,从而提高软件可靠性同时减少软件测试开销。
有鉴于此,LDRA公司成功开发出单元级测试工具TBrun可自动帮助测试工程师进行单元级软件测试。
TBrun功能特点:*自动产生测试驱动与桩模块;*支持单元级与集成级测试;*代码修改后自动对测试用例进行验证;*支持回归测试(Regressiontest);*支持宿主机/目标机平台测试;*与Testbed结合使用可提供代码覆盖率分析;*友好的图形化界面;*提供命令行接口。
五、支持语言与平台语言:AdaCC++CobalCoral66FortranPascalPL/1PL/Mx86IntelAssemblers(80x86,80C196,8051,etc.)MotorolaAssemblers(680x0,HP680x0,XD68020,68HC11,etc.)平台:UNIX(Solaris,HP-UX,AIX,IRIX,SunOS,Digital,etc.)VAX/VMSOpenVMSWindowsNT/95Windows3.1xMVSUnisys2200-serialsandA-seriesRTOS:VxWORKS,PSOS,VRTX,Etc.。