基于TTCN-3的TETRA数字集群空中接口测试方法及系统
技术领域
本发明涉及数字集群空中接口测试技术领域,尤其涉及一种基于TTCN-3的TETRA数字集群空中接口测试方法。
背景技术
协议测试包括验证协议实现与相应的协议标准的一致性和不同厂商产品的互连互通性,目前协议测试的主要研究工作集中在协议的一致性测试上,对于互操作性测试的研究则比较少,因为各个厂商对于协议理解不同,而且一个协议存在多个不同版本,因此,在协议产品投入到大规模使用前,需要对其进行协议测试,尤其是对协议实现体进行互操作性测试,以保证通信系统正常、稳定地工作,定位并改进其与相关标准不符合的部分。
空中接口测试用于验证在TETRA(Terrestrial Trunked Radio,陆上集群无线电)系统中,测试终端和网络之间的信令协议是否符合ETSI(European TelecommunicationsStandards Institute,欧洲电信标准化协会)标准,用以保证不同厂家、不同型号终端的表现一致并能够互联互通。
TETRA是公开的通信标准,虽然标准已确定,但不同厂商、不同品牌的TETRA设备实现的方法各不相同,为了验证其互连互通性,规定了一系列的TETRA的互操作性(interoperability)认证测试程序。在TETRA设备大规模生产使用前,需要进行互操作性测试,以证明设备符合标准,具有互操作性。全球TETRA及关键通信联合会(TETRA+CriticalCommunications Association)已规定了一系列的TETRA互操作性(TETRA V+D TIPCompliance Test Plan)认证测试例,以验证TETRA供应商制造的TETRA系统各通信模块的性能。
图1示出了一个典型的TETRA互操作性测试系统与被测系统的外部接口,TETRA互操作性测试需要测试系统抓取被测系统中通过的空口信令,来判断系统及其行为是否符合协议标准。
图2示出了典型的测试系统内部结构,为了使测试流程更清晰,在测试系统中通常会为各个移动台和网络侧分别定义仿真模块,以模仿真实信令流程,方便测试人员理解。每个移动台会对应一个移动台仿真模块,交换侧对应一个交换侧仿真模块,当测试系统抓取到被测系统的信令时,会发送给主测试模块进行模板比对,同时主测试模块会将收到的信令相应发送给不同的仿真模块,仿真模块之间进行收发以模仿真实信令流程。
目前现有技术中针对TETRA数字集群空口测试一般采用人工操作的方法,即手动操作移动台来完成测试流程,不仅增加了测试难度,而且繁多的测试例也使测试变得费时费力。更重要的是一旦测试涉及到人员的操作,会使测试结果带有主观因素,有失客观。同时,测试系统内部定义了多个仿真模块以模仿通信流程,虽然这使流程更加清晰明了,但也增加了测试程序编写的难度。
发明内容
本发明的实施例提供了一种基于TTCN-3的TETRA数字集群空中接口测试方法及系统,以解决现有技术中针对TETRA数字集群空口测试采用人工操作所带来的不足。
基于本发明的一个方面,本发明提供一种基于TTCN-3的TETRA数字集群空中接口测试系统,包括测试系统和被测系统,其中:
所述测试系统用于执行对所述被测系统的各个移动台之间的空中接口进行测试的测试用例,使用AT指令控制所述移动台进行业务操作,对所述被测系统发送过来的信令进行分析,根据分析结果获取所述测试用例的测试结果;
所述被测系统包括多个移动台、空口分析仪和网络侧,所述多个移动台通过外部设备接口PEI与所述测试系统连接,所述空口分析仪通过以太网口与所述测试系统连接,监听各个移动台和网络侧之间的空中接口上传输的信令,将监听到的所述信令通过以太网口传输给所述测试系统。
作为本发明的进一步改进,其中,所述测试系统包括一个主测试组件和多个非主测试组件,所述多个非主测试组件包括设置有多个PEI串口接口的非主测试组件和设置有一个以太网接口的非主测试组件,所述设置有PEI串口接口的非主测试组件用于通过PEI接口连接移动台,发送和接收控制所述移动台的AT指令,所述设置有以太网接口的非主测试组件用于通过以太网口和所述被测系统连接,接收所述被测系统中空口分析仪抓取的信令。
作为本发明的进一步改进,其中,所述的多个非主测试组件由所述主测试组件创建和控制,一个非主测试组件对应所述空口分析仪,剩余的非主测试组件每个分别对应和控制一个移动台。
作为本发明的进一步改进,其中,所述的多个非主测试组件之间通过设定端口进行通信。
作为本发明的进一步改进,其中,所述的主测试组件,具体用于控制所述多个非主测试组件中的各个非主测试组件和对应的移动台之间完成互相独立的测试过程,当判断每个非主测试组件发送、接收的AT指令和空口分析仪收到的空中接口的信号都符合要求后,则判断所述测试用例的测试结果为正确。
作为本发明的进一步改进,其中,包括:
测试系统利用TTCN-3测试脚本编写并执行对各个移动台之间的空中接口进行测试的测试用例,所述测试系统使用AT指令控制所述移动台进行业务操作,对所述被测系统发送过来的信令进行分析,根据分析结果获取所述测试用例的测试结果;
设置包括多个移动终端、空口分析仪和网络侧的被测系统,所述多个移动终端通过外部设备接口PEI与所述测试系统连接;所述空口分析仪通过以太网口与所述测试系统连接,监听各个移动台之间和网络侧在空中接口上传输的信令,将监听到的所述信令通过以太网口传输给所述测试系统。
作为本发明的进一步改进,其中,所述的方法还包括:
在所述测试系统中设置一个主测试组件,所述主测试组件创建和控制多个非主测试组件,所述多个非主测试组件包括设置有多个PEI串口接口的非主测试组件和设置有一个以太网接口的非主测试组件;
所述非主测试组件通过PEI接口连接所述移动台,发送和接收控制所述移动台的AT指令,所述非主测试组件通过以太网接口和所述被测系统连接,接收所述被测系统发送过来的信令。
作为本发明的进一步改进,其中,包括以下几个步骤:
连接测试需要的移动台;
启动一个主测试组件并创建一个接收空口信令的非主测试组件和多个收发AT指令的非主测试组件,并进行端口映射;
通过收发AT指令的非主测试组件对移动台进行初始化设置,初始化设置成功后执行测试步骤;
等待所有非主测试组件运行完毕并判断测试例是否结束;
如果测试例尚未结束则继续执行下一测试步骤直至测试例接受。
作为本发明的进一步改进,其中,所述初始化设置成功后执行测试步骤是指,多个非主测试组件开始运行,其中收发AT指令的非主测试组件控制移动台行为;接收空口信令的非主测试组件会捕捉空口信令,并判断接收到的空口信令是否符合预期,若符合则等待所有非主测试组件运行完毕,否则,结束测试并返回错误结果。
作为本发明的进一步改进,其中,所述方法还包括,测试例结束后,主测试组件停止所有非主测试组件运行,输出总测试结果及打印测试日志。
由上述本发明的技术方案可以看出,本发明不需要手动操作移动来完成测试,采用的是自动测试方法,即通过串口的AT指令来操作移动台来完成测试,不仅提高了测试的效率,减轻了测试人员的负担,而且令测试更加标准化,结果更为详细、可靠。而且,因为测试系统通过串口直接与移动台进行交互,测试系统内部就不再定义仿真模块,降低了测试程序编写的难度,提高了测试效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中测试系统外部接口示意图;
图2为现有技术中测试系统内部结构示意图;
图3为本发明实施例提供的测试系统与被测系统间的接口示意图;
图4为本发明实施例提供的TTCN-3测试配置图;
图5为本发明实施例提供的测试系统组成及内部接口示意图;
图6为本发明实施例提供的测试方法运行流程示意图;
图7为本发明以TETRA V+D TIP Compliance Test Plan IOP001-01中的4.2.1测试例为例测试TETRA系统全双工呼叫建立功能的流程示意图。
具体实施方式
为便于对本发明实施例的理解,下面将结合附图以具体实施例为例做进一步的解释说明,且实施例并不构成对本发明实施例的限定。
一种基于TTCN-3的TETRA数字集群空中接口测试系统,如图3所示,包括测试系统11和被测系统12,测试系统11用于执行对被测系统12的各个移动台之间的空中接口进行测试的测试用例,使用AT指令控制移动台进行业务操作,对被测系统12发送过来的信令进行分析,根据分析结果获取所述测试用例的测试结果;被测系统12包括多个移动台121、一个空口分析仪122和网络侧123,多个移动台121通过端口1与所述测试系统11连接,空口分析仪122通过端口2与所述测试系统11连接,监听各个移动台和网络侧123之间在空中接口上传输的信令,将监听到的信令通过端口2传输给所述测试系统11,即测试系统11通过端口1和端口2与被测系统12(System Under Test,SUT)相连,其中端口1为基于PEI(PeripheralEquipment Interface,外围设备接口)串口的测试接口,端口2为基于以太网口的测试接口。具体的,测试系统11通过端口1连接被测系统12的移动台侧121,通过端口1,测试系统11可以向相应移动台121(mobile station,MS)发送AT指令以控制移动台121行为并且接收移动台121发来的AT指令;测试系统11通过端口2连接被测系统12的空口分析仪侧,通过端口2,测试系统11可接收空口分析仪122上经过空口传输的上下行数据流,并进行格式处理以满足测试需求;被测系统12的空口分析仪122可抓取移动台121和和网络侧123之间在空中接口的信令。
本发明的协议测试采用TTCN-3(Testing and Test Control Notationversion3),TTCN-3是一种灵活和强有力的语言,它用于描述在多种通信端口上的各种响应系统测试。使用TTCN-3测试,需要对其进行初始化配置,即定义需要的测试成分(components)及其通信端口(ports)。如图4所示,TTCN-3测试配置包括两部分,第一是需要定义互连测试组件,包括一个且仅有一个主测试组件MTC(main test component)和多个非主测试组件PTCs(也叫平行测试组件,parallel test component),端口定义在对应的测试组件上,用于发送和接收消息,各测试组件通过端口相互通信;第二是定义该测试系统边界的明确的测试系统接口,通过抽象测试系统接口和实际测试系统接口实现MTC、PCTs与被测系统SUT之间的通信。当启动测试例时,主测试组件MTC自动创建,负责管理和协调非主测试组件PTCs的测试行为,生命周期贯穿整个测试例的执行过程;非主测试组件PTCs可以动态创建、启动和停止,可以同时并发运行,平行执行测试。
本发明的测试系统11组成及内部接口定义如图5所示,测试系统11由一个主测试组件MTC111(ControllerComponent)、一个以太网口对应的非主测试组件PTC112(SwMIComponent,PCT(n+1))和多个PEI串口接口对应的非主测试组件PTC113(PEIComponent,PCT1、PTC2……PTCn)组成,其中,主测试组件MTC111用于测试管理(Testmanager),控制多个非主测试组件PTC中的各个非主测试组件PTC和对应的移动台之间完成互相独立的测试过程,当判断每个非主测试组件PTC所控制的移动台发送、接收的AT指令和空口分析仪收到的空中接口的信号都符合要求后,则判断所述测试用例的测试结果为正确。每个与PEI串口接口对应的非主测试组件PTC113均对应一个被测系统12相应的移动台MS,如测试系统11的PCT1对应被测系统12的移动台MS1,测试系统11的PCTn对应被测系统12的移动台MSn。PEI串口接口对应的PTCn上定义有端口1(PEIport),用于发送和接收控制移动台的AT指令;以太网口对应的PTC(n+1)上定义有端口2(netport),用于接收空口分析仪上收到空口传输的上下行信令;所有的PTC上定义了端口3(InterComponentType),用于各个PTC之间的内部通信。
图6示出了基于TTCN-3的测试程序流程,如图所示,启动主测试组件MTC,测试开始,定义各数据类型、模板、端口及组件,创建非主测试组件PTC并绑定端口,之后启动非主测试组件PTC执行相应测试,根据接收到的数据及定时器是否超时判断测试是否结束,若结束则通知主测试组件MTC,直至主程序结束,主程序结束后解除端口绑定,测试全部完成,判定测试结果是否满足测试要求。
下面具体描述基于TTCN-3的TETRA数字集群空中接口的测试方法,有以下几个步骤:
1)连接测试需要的移动台并进行相关设置,在pc机上配置测试参数;
2)对测试程序进行初始化,启动一个主测试组件MTC111并创建一个接收空口信令的非主测试组件PTC112和多个收发AT指令的非主测试组件PTC113,并进行端口映射;
3)非主测试组件PTC113通过收发AT指令对移动台进行初始化设置,若设置成功,执行步骤4),否则,结束测试并返回结果“fail”;
4)进行下一个测试步骤(一个测试例通常包含多个测试步骤),多个非主测试组件开始运行,其中非主测试组件PTC113通过收发AT指令控制移动台行为,而非主测试组件PTC112会接收空口分析仪122的发来空口信令,并判断接收到的信令是否符合预期,若符合,执行步骤5),否则,结束测试并返回结果“fail”;
5)等待所有非主测试组件PCT运行完毕;
6)判断测试例是否结束,若结束,执行步骤7),否则执行步骤4)
7)根据测试情况返回测试结果,正常为“pass”,失败为“fail”;
8)主测试组件MTC停止所有非主测试组件PTC,本测试例运行结束,输出总测试结果及打印测试日志。
图7以IOP001-01(TETRA V+D TIP Compliance Test Plan IOP001-01)中的4.2.1测试例为例,说明TETRA数字集群全双工呼叫建立功能的测试。
启动主测试组件MTC,并创建一个空口非主测试组件PTC3和两个AT指令非主测试组件PTC1和PTC2,且需要绑定相应的被测终端端口;
主测试组件MTC执行初始化步骤,即令AT指令非主测试组件PTC1和PTC2对相应的被测终端MS1、MS2进行初始化设置,如设置成功,测试继续,否则测试结束;
主测试组件MTC执行测试步骤1,即非主测试组件PTC1通过AT指令控制被测终端MS1向被测终端MS2发起全双工呼叫;
被测终端MS2收到被测终端MS1的呼叫消息(振铃),非主测试组件PTC2收到MS2的AT指令;
空口非主测试组件PTC3从空口分析仪122收到被测终端MS1呼叫被测终端MS2的信令;
主测试组件MTC执行测试步骤2,即非主测试组件PTC2通过AT指令控制被测终端MS2摘机进行应答;
非主测试组件PTC1收到AT指令即被测终端MS1收到被测终端MS2的摘机应答响应;
空口非主测试组件PTC3从空口分析仪122收到被测终端MS2摘机应答的信令;
主测试组件MTC执行测试步骤3,即非主测试组件PTC1通过AT指令控制被测终端MS1挂机;
非主测试组件PTC2收到AT指令即被测终端MS2收到被测终端MS1的挂机消息;
空口非主测试组件PTC3从空口分析仪122收到被测终端MS1的挂机信令;
测试例运行结束,停止运行所有非主测试组件,生成测试结果并打印日志。
通过上述实施例可以看到,本发明具有以下的优点:整个测试系统搭建简单,采用自动测试,节约测试成本,降低测试难度;测试脚本根据IOP标准编写,具有全面性和标准性,也可以根据实际需求自定义编写;可以保证通信网络的协议一致性,验证网络实现的正确性和稳定性;可以通过不同厂商不同型号的移动台进行测试,具有通用性;为TETRA数字集群通信网络设备的标准化奠定基础,可用于产品合格认证鉴定。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。