在软件开发过程中应用自动测试

发表于:2009-3-19 14:44

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:电子工程专辑

分享:

  TTCN是一种规范的测试描述语言,它的作用已在通信业中得到了证明。最初这种语言是为明确指定测试指令序列而开发的,它与内部实现没有关系,协议执行测试作为OSI参考模式(即通信堆栈)的一部分。TTCN是标准化语言(ISO/IEC 9646-3),它与具体开发商无关。

  现在我们已有了TTCN-3语言,TTCN-3不仅仅是旧标准的新版本,在很大程度上它实际上是一种新语言。它由ETSI(ES 201873-1)开发出来,当时成为ITU测试推荐内容(Z.140)。开发TTCN-3及其内部所包含的思想是希望保留TTCN-2在通信领域“边试边测”的优势,再加上新语言的帮助,弥补它在其它领域的不足。如今TTCN-3已是很多系统测试中先进灵活的语言,可用于多种应用中。TTCN-3的语法与传统程序语言相兼容,包括同步和异步通信机制,还能够选择定义动态并行测试。有了这些功能,TTCN-3不仅可以测试协议,而且可以测试模块、基于 CORBA的平台以及应用界面(API)等等(图1)。

  TTCN-3另外一个突出的地方是TTCN运行时的界面(TRI),该界面能使现有可执行测试指令序列适应特定的被测系统。用一个与TRI兼容的 TTCN-3工具将测试指令序列抽象描述转换成可执行代码后,即使工具改变这种编译还可以使用,这样投资就得到了保障。

  开发统一模型语言UML 2.0的测试纲要工作由目标管理组(OMG)完成,有了这个纲要就可以从规范化UML得出并验证测试规范,因此产生测试指令序列的时间就会减少,还可以避免手工测试指令序列的错误。TTCN-3将成为被推荐的UML测试语言之一。

  虽然TTCN-3是新开发出来的产品,它也包含了许多TTCN-2的概念,故对一个有TTCN-2经验的人来说不会有很大困难,并且还可以选择以前熟悉的显示窗口。此外通过自动转换工具,TTCN-3的测试描述还可从现有的TTCN-2测试中产生,通过配置适当的工具,TTCN-3的各项优点都能得到利用。例如支持TTCN-3的工具Tau/Tester,它是一个综合环境,只需要一台普通台式电脑和熟悉的工作界面就可以支持整个测试。 Tau/Tester可以提供测试设计、开发、分析、实施以及各种调试功能,有了这个工具就可在整个公司对不同应用使用同一个测试平台,从而取代那些昂贵的内部专用解决方案(图2)。

  Tau/Tester的特点是自动化程度很高,它完全以TTCN-3标准为基础来实现测试。项目组可以集中精力在测试内容上,测试的产生、实施和结果记录则将自动执行。这样项目组的工作效率可以非常高,更重要的是所有测试都是一样的,需要的时候可以重复。当然测试指令序列还能扩充,可通过内部或外部资源如标准委员会得到现成的测试事件。

  TTCN-3一个重要的创新在于它还可以定义复杂并行运行的分布式系统测试指令序列,这一功能Tau/Tester也考虑在内,它对大型项目(包括分布在不同地域的项目)提供专门的支持,并将它们与先进的配置和管理工具很好地整合在了一起。

  白盒测试

  

  测试源代码的覆盖情况

  当然,系统性能除了表面上要合乎要求之外,还应知道测试时源代码确实已被完整测试过,如果不能完整测试,多数是因为测试指令序列不全或代码错误,使有些代码根本就没有被执行(称为“废码”)。从程序本身来看,废码也许没有什么害处,但是废码的存在说明有严重的概念错误或运行错误。

  所定义的测试指令序列是否完全覆盖源代码的问题可以这样来回答,即源代码是在可执行代码产生前就装载好了,然后在运行测试指令序列时执行。结果是一个报告和图表展示,记录每个模块的测试覆盖情况。这个结果是清楚客观的,而且随时可以重新生成,以这些标准值为基础,测试指令序列可以不断优化,使测试源代码覆盖率达到100%。

  本文结论

  如今产品开发不再是孤立的单独行为,而应看作是整个产品生命周期的基本组成部分,它包括需求分析、建模、规范制定、测试及文档系统建立。先进的支持产品生命周期的过程概念对产品质量管理尤其重要,它是保证及提高产品整个过程质量的重要措施。以前测试在某种程度上地位比较低,现在随着产品复杂程度的日益增加,测试已经成为产品是否能被接受的关键。同时人们也越来越认识到,对产品进行有效测试并不是最终目的,而是应该在流程早期就要考虑的事情,它在产品的生命周期内会反复产生影响。

  正因如此,在测试阶段采用什么样的测试方法和工具就很关键,各公司用的模型和规范都应同样处于高要求。规范化语言、适当的方法和相应的工具有助于在自动测试和设计时简化测试方法、定义和执行。TTCN-3具备了标准化条件,Tau/Tester在实际项目中可以发掘出TTCN-3的内在潜力。测试覆盖的辅助测量(如利用Tau Logiscope协助)是对应用领域的实际测量,此时低错误率非常关键。

22/2<12
重磅发布,2022软件测试行业现状调查报告~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2023
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号