基于TTCN3的测试平台的组成研究综述
2014-12-09黄伟昌芮耀李健刘严根
黄伟昌 芮耀 李健 刘严根
摘 要:随着移动通讯网络的发展,TTCN3在协议一致性测平台中得到广泛应用,本文主要介绍在协议一致性测试中,对基于TTCN3语言的测试平台的整体架构和组成进行综述。
关键词:协议一致性;TTCN3
1 TTCN3测试系统的整体架构
TTCN3(Testing and Test Control Notation Version 3)是一种标准化协议测试规范语言,可以应用在协议一致性测试,单元模块的互操作性测试,应用接口的测试等方面。TTCN3测试系统可以在概念上被认为是一组交互系统,是对应于测试系统实现的某个特殊方面的功能。这些实体管理测试执行,解释或者执行编译好的TTCN3代码,实现同SUT通信,以及外部功能和处理定时器的操作。
2 TTCN3测试系统的组成
依靠测试管理和控制实体,可以区分测试管理,外部编码,测试事件记录以及解码和组件处理有关的功能。测试管理实体负责了整个测试系统的管理功能。在测试系统初始化完成以后,在测试管理实体中测试就开始执行。这个实体负责了TTCN3模块的调用,例如为测试执行准备模块参数和相关信息等等。特别的是,这个实体可以被用来实现测试系统的接口。测试记录实体用来维护测试日志。它可以迅速响应测试执行体以执行记录测试事件的日志。
测试日志实体可以让任何地测试实体通过单向的接口向其发送一个日志请求。内部管理实体的一个接口可以用来记录测试实体产生的测试管理信息。编码和解码实体可能用来编码和解码基于消息和过程的与测试实体通信的数据。外部的编解码器可以平行地运行或者以内置与测试实体关联的编解码器。不同于内置编解码器,外部编解码器有一个标准的接口,使其兼容不同的TTCN3系统和工具。
测试执行体负责解析和执行TTCN3代码。测试执行体可以分成三个交互实体:ETS、TTCN3实时系统以及可选的内部编解码系统实体。这些改进则使得系统在概念上变为更小的实体以此来更好地定义TTCN3测试系统的接口。测试执行套件处理了执行和测试用例的解析,在TTCN3相应的模块定义了测试事件的时序和匹配机制。在测试运行时通过与T3RTS(TTCN3 Runtime System)实体交互来完成发送和尝试接受或者匹配以及记录测试等事件,产生和销毁TTCN3的组件同时还包括了处理外部的函数调用,行为操作和定时器事件。可执行套件不直接通过TRI(TTCN3 Runtime Interface)与SA(System Adaptor)通信。
T3RTS(TTCN3 Runtime System)实体与测试管理实体,系统适配器和平台适配器实体通过控制和实时接口联系,并且管理ETS(Executable Test Case)和EDS(Encode and Decode System)实体。它负责初始化适配器和ETS和EDS实体。这个实体平台执行了所有相关的行为来启动和执行测试用例或者在ETS中带有参数的函数。它通过向TM(Test Manage)查询ETS所需的参数值并且返回日志信息,还包括了收集和解析ETS实体返回的关联结论。
TTCN3实时测试实体实现了创建和销毁了TTCN3测试组件以及基于消息和过程的通信,外部函数调用,行为操作和定时器,还包括了通知被测系统适配器关于哪条消息调用过程被发送给被测试系统,或者通知平台适配器哪个外部函数被执行了或者哪个定时器将要被启动以及停止,查询或者读取。类似的,它还通知ETS(Executable Test Suite)实体从SUT发来的消息或者过程调用还有超时事件。T3RTS调用EDS过程优先于发送或者接收消息以及SA(System Adaptor)过程调用或者在PA(Platform Adaptor)的ETS实体的相关行为操作。T3RTS实体应该支持测试组件间所有的基于消息或者过程通信操作,但是除了TTCN3基于语义与SUT通信的过程。所有的同SUT通信的过程都可以被实现并且在SA(System Adaptor)中指定,因为他们在平台指定的要求上被最大效率地实现。
编码和解码系统负责内部测试数据的编解码,其包括了同SUT通信操作的数据,以及指定的可执行的TTCN3模块。假如TTCN3模块没有指定编解码参数值则由工具指定。该实体由T3RTS调用并返回给T3RTS。注意到EDS实体并没有直接通过TRI(TTCN3 Runtime Interface)与SA交互。
定时器在TTCN3 ATS(Abstract Test Suite)中被声明并且命名可以从概念上被简明地分类。被TE创建的定时器用来监视TTCN3过程调用或者执行操作都是被认为是TE中的隐含定时器。简明和隐含的定时器都在TE中创建并且由平台适配器所实现。这可以用来产生独有的定时器标识,这个独有的标识应该允许TE区分不同的定时器,还可以用来与在PA(Platform Adaptor)中对应的定时器执行交互。PA执行TTCN3外部函数并且提供给测试系统一个单独的时间概念。在这个实体中,外部函数和定时器都将被执行。定时器实例在TE中被创建的,因此在PA中的定时器仅仅只能通过定时器的标识来区分。PA还可以及时通知TE超时的定时器事。
3 结语
本文通过介绍GPRS和服务支持节点的概念,分析和研究了GPRS服务支持节点测试过程,说明GPRS服务支持节点测试的方法是在GPRS技术测试领域内一种非常实用的方法,并且得到广泛应用。
[参考文献]
[1]孟凡淇.协议一致性测试方法的研究[J].信息与电脑.2013(3).
[2]赵会群.通信软件测试技术基础[M].北京:人民邮电出版社.2004,35(5).