嵌入式软件工业化测试工具LOGISCOPE(2)

发表于:2011-10-31来源:未知作者:领测软件测试网采编点击数: 标签:嵌入式软件测试
3.2 测试的有效性 TestChecker 产生每个测试的测试覆盖信息和累计信息。用直方图显示覆盖比率,并根据测试运行情况实时在线更改。随时显示新的测试所反

  3.2 测试的有效性

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

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

  3.3 测试的优化

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

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

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

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

  4 LOGISCOPE 用于维护阶段

  人们广泛的认识到应用系统的维护费用与开发费用基本相等。经验表明50%的软件维护时间化在对结构、逻辑和运行的理解上。

  LOGISCOPE可以大大的减少对未知系统的理解所需的时间。

  Audit 将应用系统的框架以文件形式(部件文件间的关系)和调用图的形式(函数和过程间的关系)可视化。

  函数的逻辑结构以控制流图的形式显示。在控制流图上选定一个节点,即可得到相对应的代码。

  行分析,不同层次间的导航,促进对整体的理解。

  5 对嵌入式领域的支持

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

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

  LOGISCOPE很好地解决了这些技术,成为嵌入式领域测试工具的佼佼者。它支持各种实时操作系统(RTOS)上的应用程序的测试,也支持逻辑系统的测试。其工作原理图如下:

  Logiscope 提供 VxWorks 、 pSOS 、 VRTX 实时操作系统的测试库。

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

  在航空 / 航天领域,安全是最关键的问题。因此,欧美的航空 / 航天制造厂商和使用单位联合制定了 RTCA/DO-178B[5] 。 LOGISCOPE 通过对“ Reviews and Analysis of the Source Code ” 和“ Structural Coverage Analysis ”能够使开发的软件达到 RTCA/DO-178B 标准的 A 、 B 、 C 三个系统级。

  LOGISCOPE 是第一个提供 MC/DC(Modified Condition/Decision Coverage) 测试的工具。

  VERILOG 公司另一个产品 SCADE 是完全支持 RTCA/DO-178B 、 IEC1508[6] 、 IEC880[7] 的工具。将 SCADE 和 LOGISCOPE 配置成生产线,确保航空 / 航天安全关键系统的软件安全可靠。

  7. 软件文档和测试文档的自动生成

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

  1) 避免了代码和文档的不一致性;

  2) 避免测试结果和测试报告的不一致性;

  3) 减轻了开发人员和测试人员编写文档的工作。

  8 总结

  LOGISCOPE 的使用能够在最短的时间内,提高软的质量和效率。

  LOGISCOPE 在开发阶段,查找可寻找潜在的错误。

  在代码评审阶段, LOGISCOPE 定位那些具有 80% 错误的程序模块。

  通过对未被测试代码的定位, LOGISCOPE 帮助找到隐藏在未测试代码中的缺陷

  项目领导和质量工程师用 LOGISCOPE 定期地检查整个软件的质量。

  在各个阶段用 LOGISCOPE ,改进软件工程的实践,训练程序员的编写良好的代码和测试活动,确保系统易于维护,减少风险。

  在有合同关系时,合同方可以用 LOGISCOPE 明确定义验收时质量等级和执行测试。承制方可以用 LOGISCOPE 演示其软件的质量。

  LOGISCOPE 获取 ISO/IEC9126 定义的“ Quality Characteristics ”;

  LOGISCOPE 为 ISO-9001[9] 提供需求( test acceptance criteria and qulity records ) ;

  LOGISCOPE 为开发者提供 SEI/CMM[10] 在第 2 级( Repeatable )所要求的软件质量跟踪等关键实践的要求,推进开发组织尽快达到 SEI/SMM 的 3 级

原文转自:http://www.ltesting.net