`
softstone
  • 浏览: 480850 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

测试方法和测试工具解决方案(2)

阅读更多

测试方法和测试工具解决方案(2)

太平洋软件(中国)有限公司
(本文转载自软件工程专家网www.21cmm.com

三、相关工具

  在我们了解了测试所涉及的内容之后,测试方法和采用相对应的自动化测试工具是至关重要的。自动化的测试工具意味着在测试活动中减少相当部分开销,真正的含义是它参加了测试的很大部分活动;同时,有些测试活动是靠手工方式难以实现,难以度量的。我们在对自动化的测试工具做成本效益分析时,应当考虑到项目的预期时间和人工消耗,一些测试用手工来做可能由几个人需要几个星期甚至更长时间来完成,而采用自动化的测试工具可能只需要几个小时或者几分钟;象基于Client-Server的负载测试或者是基于Web系统的测试如果要用手工测试来完成是很困难和不现实的。所以,在测试活动中选择自动化的测试工具是非常必要的。

  下面我们就相应工具进行简要的介绍。

1. 嵌入式软件测试工具--LOGISCOPE

  LOGISCOPE 是一组嵌入式软件测试工具集。它贯穿于软件开发、代码评审、单元/集成测试、系统测试、以及软件维护阶段。它面向源代码进行工作。LOGISCOPE 针对编码、测试和维护。因此,LOGISCOPE 的重点是帮助代码评审(Review )和动态覆盖测试(Testing )。

  LOGISCOPE对软件的分析,采用基于国际间使用的度量方法(Halstead、McCabe等)的质量模型,以及从多家公司收集的编程规则集,可以从软件的编程规则,静态特征和动态测试覆盖等多个方面,量化地定义质量模型,并检查、评估软件质量。

  LOGISCOPE 在开发阶段,查找可寻找潜在的错误。
  在代码评审阶段,LOGISCOPE 定位那些具有80%错误的程序模块。
  通过对未被测试代码的定位,LOGISCOPE 帮助找到隐藏在未测试代码中的缺陷。
  项目领导和质量工程师用LOGISCOPE 定期地检查整个软件的质量。
  在各个阶段用LOGISCOPE ,改进软件工程的实践,训练程序员的编写良好的代码和测试活动,确保系统易于维护,减少风险。
  在有合同关系时,合同方可以用LOGISCOPE 明确定义验收时质量等级和执行测试。承制方可以用LOGISCOPE 演示其软件的质量。
  LOGISCOPE 获取ISO/IEC9126 定义的"Quality Characteristics ";
  LOGISCOPE 为ISO-9001提供需求(test acceptance criteria and qulity records );
  LOGISCOPE 为开发者提供SEI/CMM在第2 级(Repeatable )所要求的软件质量跟踪等关键实践的要求,推进开发组织尽快达到SEI/SMM 的3 级。

1)LOGISCOPE 用于开发阶段

定义质量模型

  RuleChecker 预定义了50 个的编程规则:名称约定(如:局部变量用小写等);表示约定(如:每行一条指令); 限制(如:不能用GOTO 语句,不能修改循环体中的计数器等)。用户可以从这些规则中选择,也可以用Tcl 、脚本和编程语言定义新的规则。此外,还提供50 个面向安全-关键系统的编程规则。

  Audit 以ISO9126 模型作为质量评价模型的基础。质量评价模型描述了从Halstend 、McCabe 的度量方法学和VERILOG 引入的质量方法学中的质量因素(可维护性、可重用性、等)和质量准则(可测试性、可读性、等)。

  工程项目领导或质量管理人员可以根据准则、应用软件的生存周期、合同需求等,挑选并采纳适用于项目需求的质量模型。

验证、评审和改进代码

  RuleChecker 用所选的规则对源代码进行验证。指出所有不符合编程规则的代码,并提出改进源代码的解释和建议。RulrChecker 通过文本编辑器直接访问源代码并指出需要纠正的位置。

  Audit 将被评价的软件与规定的质量模型进行比较,用图形形式显示软件质量的级别,因此,质量人员可以把精力集中到需要修改的代码部分。对度量元素和质量模型不一致的地方作出解释并提出纠正的方法。

2)LOGISCOPE 用于测试阶段

定义测试准则

  LOGISCOPE 推荐对指令(IB)、逻辑路径(DDP)和调用路径(PPP)的覆盖测试。此外对安全-关键软件还提供了MC/DC 的覆盖测试。

测试的有效性

  TestChecker 产生每个测试的测试覆盖信息和累计信息。用直方图显示覆盖比率,并根据测试运行情况实时在线更改。随时显示新的测试所反映的测试覆盖情况。

  TestChecker 允许所有的测试运行依据其有效性进行管理。用户可以减少那些用于非回归测试的测试。

测试的优化

  在测试阶段的第一步,执行的测试是功能性(黑箱)测试。其目的是检查所期望的功能是否已实现。在测试初期,覆盖率会迅速增加。象样的测试工作一般能达到70%的覆盖率。但是,要提高此比率是十分困难的。主要是由于测试用例覆盖了相同的测试路径。这时,需要对测试策略做一些改变。执行结构化(白箱)测试,即,要检测没有执行过的逻辑路径,定义新的测试用例覆盖这些路径。

  在执行测试期间,当测试策略改变时,综合的运用TestChecker 检测关键因素以提高效率。将TestChecker与Audit 配合使用能够帮助用户分析未测试的代码。

  用户可以显示所关心的代码,并通过对执行未覆盖的路径的观察得到有关的信息。信息以图形(控制流图)和文本(伪代码和源文件)的形式提交,并在其间建立导航关联。

  TestChecker 管理系统声明新的测试、生成有关文档、定义启动命令、以及自动执行的方法。

3)LOGISCOPE 用于维护阶段

  人们广泛的认识到应用系统的维护费用与开发费用基本相等。经验表明50%的软件维

  护时间化在对结构、逻辑和运行的理解上。LOGISCOPE 可以大大的减少对未知系统的理解所需的时间。

  Audit 将应用系统的框架以文件形式(部件文件间的关系)和调用图的形式(函数和过程间的关系)可视化。函数的逻辑结构以控制流图的形式显示。在控制流图上选定一个节点,即可得到相对应的代码。可以在不同的抽象层上对应用系统进行分析,不同层次间的导航,促进对整体的理解。

4)对嵌入式领域的支持

  LOGISCOPE 支持多种测试方式。特别是对嵌入式领域软件的支持。

  众所周知,嵌入式系统软件的测试是最为困难的。因为,它的开发是用交叉编译方式进行的。在目标机(Target)上,不可能有多余的空间记录测试的信息。必须实时地将测试信息通过网线/串口传到宿主机(Host)上,并实时在线地显示。因此,对源代码的插装和目标机上的信息收集与回传成为问题的关键。

  LOGISCOPE 很好地解决了这些技术,成为嵌入式领域测试工具的佼佼者。它支持各种实时操作系统(RTOS)上的应用程序的测试,也支持逻辑系统的测试。Logiscope 提供VxWorks 、pSOS 、VRTX 实时操作系统的测试库。

5)对航空/航天/国防/核电站领域的支持

  在航空/航天领域,安全是最关键的问题。因此,欧美的航空/航天制造厂商和使用单位联合制定了RTCA/DO-178B。LOGISCOPE 通过对"Reviews and Analysis of the Source
Code " 和"Structural Coverage Analysis "能够使开发的软件达到RTCA/DO-178B 标准的A 、B 、C 三个系统级。
LOGISCOPE 是第一个提供MC/DC(Modified Condition/Decision Coverage)测试的工具。

6)软件文档和测试文档的自动生成

  Logiscope 提供了文档自动生成工具。使用者可以将代码评审的结果和动态测试情况实时生成所要求的文档,这些文档忠实地记录代码的情况和动态测试的结果。文档的格式可以根据用户的需要定制,如,GJB-438A。

  支持的主机平台:
  UNIX:Sun OS/Solaris, HP 700 HP-UX, RS6000 AIX, Power PC, DEC UNIX;
  IBM Mainframe MVS环境;
  PC Windows/NT。
  支持的语言:C, C++, Ada, Java
  目标机环境:支持嵌入式实时操作系统VxWorks,PSOS,VRTX

分享到:
评论

相关推荐

    测试方法和测试工具解决方案

    ### 测试方法和测试工具解决方案 #### 一、概述 测试是软件开发过程中不可或缺的一环,它能够确保软件产品的质量并提升用户体验。本教材旨在介绍几种常见的测试方法以及相关的测试工具,帮助读者更好地理解和掌握...

    软件测试方法和测试工具解决方案

    我们通过对国内外知名软件提供商和系统集成商的调查了解,在软件产品的测试方面均使用软件工程中提出的两种方法进行测试,即白盒和黑盒测试。白盒是已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合...

    IXia测试解决方案

    IXia测试解决方案是一种高度专业化的网络性能测试工具,主要用于评估和验证网络设备、软件和服务的性能、稳定性和容量。在IT行业中,IXia被广泛应用于网络设备制造商、服务提供商以及企业的质量保证流程,确保网络...

    测试方法和测试工具解决方案(3)

    测试方法和测试工具解决方案(3)软件测试2.白盒工具--NuMegaDevPartnerStudio这是一组白盒测试工具,主要是用于代码开发阶段,检查应用的可靠性和稳定性。它提供了先进的错误检查和调试解决方案,充分地改善生产力和...

    测试管理实施解决方案

    这通常涉及到单元测试和集成测试的执行,需要手动或自动化测试工具来完成。测试人员要记录测试结果,识别和消除软件中的缺陷,并通过回归测试来验证缺陷修复是否正确,同时确保没有新缺陷被引入。 系统测试阶段则...

    5G测试解决方案.pdf

    罗德与施瓦茨的解决方案能够通过SMW200A矢量信号发生器产生高达40GHz的频率范围,同时利用高达2GHz的内部分析带宽和90GHz的载波频率来解调5G宽带信号。这些优势使得5G测试解决方案在高频率、高带宽的测试场景中,...

    性能测试整体解决方案

    - **执行测试:**利用专业的测试工具进行实际操作,并记录数据。 - **结果分析:**评估测试结果,识别潜在的问题点。 - **报告提交:**撰写详细的测试报告,并提出改进建议。 #### 二、51Testing性能测试服务简介 ...

    宽带连接数测试工具,宽带压力测试工具,宽带TCP测试工具

    通过综合运用这些测试工具,我们可以对整个网络环境进行深入分析,找出潜在问题,并提出相应的解决方案。 总的来说,宽带连接数测试工具、宽带压力测试工具和宽带TCP测试工具是网络管理员和普通用户诊断和优化网络...

    软件测试的方法与工具

    内部测试涵盖了一系列的测试阶段,包括但不限于单元测试、集成测试、系统测试和验收测试,每个阶段都有其特定的目标和方法。 **1. 单元测试(Unit Testing)** 单元测试是最基础的测试级别,专注于验证软件中最小...

    自动化测试解决方案和工具资料.pdf

    总结来说,自动化测试解决方案通过规范编码、单元测试工具和错误检测工具,提高了软件开发的质量和效率,降低了维护成本。在实际应用中,结合特定行业的测试需求,如证券行业的特性,可以构建出更完善的自动化测试...

    我们的测试方案令想象化为现实 汽车测试解决方案.pdf

    因此,我将基于标题“我们的测试方案令想象化为现实 汽车测试解决方案.pdf”和描述中的内容“我们的测试方案令想象化为现实 汽车测试解决方案”来构建相关的知识点。 --- 汽车测试解决方案是在现代汽车工业中不可...

    Python-XMind2TestCase基于python实现提供了一个高效测试用例设计的解决方案

    Python-XMind2TestCase是一个强大的工具,它利用Python编程语言为测试工程师提供了高效的测试用例设计方法。...对于测试团队而言,它是一个值得考虑的解决方案,可以帮助他们更有效地管理和维护测试用例库。

    以太网测试解决方案.pdf

    以太网测试解决方案主要...通过上述测试和分析,泰克提供了一套全面的测试解决方案,以确保工程师能够迅速高效地解决以太网设计中的各种挑战,保证设备的物理层符合相应的标准规范,并在实际应用中表现出良好的性能。

    软件测试方法和技术(朱少民).rar

    2 第2章 软件测试的基本概念和方法 2.1 软件质量就是客户的满意度 2.2 软件缺陷(Bug)是什么 2.3 软件测试的基本方法 2.4 软件测试的分类和阶段 2.5 软件测试的工作范畴 4 3 第3章 质量保证与测试策略 3.1软件质量...

    软件测试方法和测试工具解决方案(2)

    软件测试方法和测试工具解决方案(2)软件测试三、相关工具在我们了解了测试所涉及的内容之后,测试方法和采用相对应的自动化测试工具是至关重要的。自动化的测试工具意味着在测试活动中减少相当部分开销,真正的含义...

    软件测试详解、测试方法及工具文档

    软件测试的详细文档 目录 一测试常识 1.1软件测试 1.2测试常识 1.3软件测试基础 1.4软件测试培训 1.5软件测试之我见 1.6测试工作管理与规范 ...2.2测试方法和测试工具解决方案(1) 2.5测试方法和测试工作解决方案(4)

Global site tag (gtag.js) - Google Analytics