● 摘要
TTCN-3(Testing and Test Control Notation 3rd,测试和测试控制符号第3版)是由ETSI(European Telecommunications Standard Institute,欧洲电信标准化协会)制定和推动的测试规范和测试实现标准,并且被ITU(International Telecommunication Union,国际电讯联盟)进行了标准化。目前基于TTCN-3的测试系统越来越复杂和庞大,使得测试系统的的管理和维护变得越来越困难。因此对基于TTCN-3的测试系统进行逆向分析,可以帮助测试人员从更高层次上把握测试系统的设计,同时可以检验测试设计和测试实现之间的一致性,这些工作对于测试系统的评估、维护以及扩展都有重大的意义和重要的价值。 OMG(Object Management Group,对象管理组织)提出了U2TP(UML 2.0 Testing Profile)的概念,旨在增强UML(Unified Modeling Language,统一建模语言)对静态测试结构和动态测试行为的描述。U2TP提供了一种通用的可视化建模语言,用于对软件测试进行描述、构造和可视化处理,同时建立软件测试系统的文档。 本文首先研究了U2TP建模规范和TTCN-3测试规范,制定并实现了它们之间的映射规则。通过使用U2TP中的各种模型概念,定义了TTCN-3测试系统的元建模,可以在抽象层次上描述和表示一个测试系统,有利于测试人员和维护人员理解和管理测试系统。其次,设计了逆向模型发现的系统框架,基于Eclipse平台使用插件机制很好的实现了框架的扩展和复用。然后,通过扩展TRex工程中的TTCN-3静态分析器,设计相应的接口实现静态基本信息、静态测试配置、测试数据、调用关系等的提取。同时使用Testing Technologies公司的TTworkbench工具运行测试用例,获得测试轨迹,实现动态测试配置的提取。本工具正是从静态和动态两个方面向测试人员和维护人员展示了测试系统的基本信息和抽象设计,用于辅助测试系统的维护和更新。 最后本文通过对SIP(Session Initiation Protocol,会话初始协议)一致性测试用例集的分析,展示了基于TTCN-3的SIP测试系统的基本信息,同时也展现了该工具在逆向模型发现方面的基本功能。