几种基于TTCN的TD-SCDMA终端协议测试方法介绍
数据的转化和处理,再将预处理后的数据送到TTCN测试环境中处理,从而大大简化了TTCN测试数据的编写和处理。这种方法最大程度的利用C、SDL、TTCN的优点,在测试过程中实现协仿真,可以生成消息序列流图(MSC图),通过观察IUT内部和IUT与环境之间PCO的消息序列和数据流,从而达到验证开发正确性的目的,可以认为该方法为一种灰箱测试方法。目前此测试方法已经广泛地应用在终端协议软件的一致性测试、互操作性测试等测试的单层和集成测试中,我们认为它是一种非常有效的测试方法。
图4 改进后的TTCN和SDL测试IUT
(二)基于TTCN的板级测试
TTCN结合SDL的测试方法能够很好地满足协议栈软件开发初期和中期的要求,但是由于SDL的实时性比较差,定时器,内存、接口测试等都不能很好的模拟现场实际情况。随着协议软件开发的逐渐成熟,只采用这种方法也不能很好的满足要求,并且到了更加需要大量基于实际环境的系统测试阶段。如此繁多的系统测试都到现场进行是非常昂贵,也是不可能实现的,因此需要对测试方法做出改进,找到能够模拟现场测试的室内系统测试新方法。
采用TTCN结合手机板的板级测试方法是一种非常有效的模拟现场测试的系统测试的好方法,仍然采用TTCN模拟测试环境,编写测试例,但是测试体不再是嵌入了C代码的SDL,而是实实在在的移植了源代码的手机板,测试模型如图5所示。
图5 板级测试的IUT
IUT的测试环境仍然是在TTCN中编写测试例模拟,也是通过接口与IUT进行消息交互,再检查消息交互的原语、数据及对应的MSC图、TRACE来验证测试实体是否达到开发的要求。而消息交互过程仍然存在,因为TTCN的局限性-无法识别复杂指针和某些数据类型的问题。因此IUT和测试环境的消息交互还必须要经过一个中间过程来转化,这个转化过程可以通过设立一个BUFFER来实现串口转换,在BUFFER中进行数据和类型的转化及处理,这个处理过程的原理实际上很类似于前面介绍的TTCN结合SDL的第二种测试方法的处理原理。
板级测试的主要特点就是将测试模块(即IUT)源代码移植到手机板上运行,在具体实现过程中,及测试例准备就绪的前提下,首先将源代码加到工程文件中,通过编译工具(一般采用ARM公司的ARMDeveloperSuite)将工程文件编译成可以在ARM核芯片上运行的目标代码,然后将代码移植到ARM核芯片上,再通过嵌入式系统的测试工具(如Lauterbach公司出品的通用调试软件TRACE-32ICD速度很快,但是价格昂贵,可根据实际情况决定)把目标代码下载到目标板上运行调试,最后通过观察PCO是否得到预期的结果。另外我们还可以将实时操作系统应用到板级测试中,将协议软件运行在这个操作系统之上,这样可以真正的实现人机界面的操作,更加真实地模拟现场测试。
板级测试不仅能够很好地克服TTCN的实时性差的缺点,而且基本上能够达到在室内实现模拟现场测试的大部分测试,就目前来说它是一种非常先进的室内测试方法,可以应用在各种终端测试的系统测试阶段。如今一致性测试互操作性测试以及性能测试等已经基本完成,但仍然需要做大量的遍历性测试,尽可能地发现以前各种测试没有发现的问题。进行遍历性测试主要应该放到系统测试阶段,因此应用板级测试将会起到非常好的效果。
重庆邮电大学信科3G研究院 姚明菊 李小文
- IPv6协议产生的背景过程和现状(三)(01-09)
- MIMO MFA控制器(多变量MFA)(05-05)
- 本地ISO或光盘作Fedora软件源进行软件管理(05-05)
- 智能卡抗DPA攻击的设计与实现(05-27)
- IT系统监控升级成当务之急(09-04)
- 深入了解路由器与交换机的功能和区别(09-07)