APP下载

LTE系统中自动化测试的设计和实现

2013-08-09徐啸涛梁方英胡蕊莉

电信工程技术与标准化 2013年4期
关键词:测试环境测试工具测试用例

徐啸涛,梁方英,胡蕊莉

(1 浙江机电职业技术学院,杭州 310053;2 浙江恒生电子证券事业部,杭州 310053)

TD-LTE是一种相对于3G有更高服务质量,更高传输速率的第四代移动通信技术标准之一。其中吞吐量是eNode B(TD-LTE基站)传输性能的重要技术指标之一。由于吞吐量的测试需要考虑到多种配置参数的组合,既需要频繁的回归测试也需要大量稳定性测试。因此当研发版本快速发布的时候,手工测试无法满足其大量的测试需求。测试自动化是一种测试技术,它通过自动化测试工具或者其它手段可以充分的增加测试覆盖范围,完成大量的重复测试,体现软件性能优劣。不仅能够大大减轻测试人员的工作量,还能够帮助完成许多手工测试难以完成的任务。因此对于TD-LTE系统吞吐量测试自动化的研究具有很高的现实意义。

1 测试环境

目前通用的Robot自动化测试框架能满足TDLTE吞吐量自动化测试需求。基于某公司TD-LTE测试平台搭建了吞吐量自动化测试环境,基本的硬件环境设计框图如图1所示。

(1)测试对象为eNode B,UE为仿真设备,它们和各自相应的control PC都连在同一个L2交换机上,这是为了尽量避免吞吐量的耗损。

(2)Power breaker是一个自动电源开关,通过关键词语句的软件调用,Robot工具能够自动控制整个系统的电源开和关。

(3)可编程衰减器是一种能够对信号衰减自动控制的设备,在此设计方案中,它连接在UE仿真器和RRU模块之间,用来调节空口上信号的无线衰减特性。同Power breaker类似,Robot测试工具通过一个控制模块对衰减器的应用服务器进行自动控制,进而能够自动调节信号的无线衰减量。

(4)Hudson server是一台自动化测试执行控制终端。能够控制整个自动化系统的执行、log记录、报告的输入输出等。

图1 测试环境硬件连接框图

2 用例设计

在图1所示的测试环境平台上,通过Robot自动化测试工具,设计了一个简单的TM3吞吐量测试用例(脚本)。如下所示,基本的用例(脚本)框架可以分成4个部分,包括用例头模块、用例变量、用例步骤和用例关键词。

2.1 用例头模块

Documentation TM1 throughput Case

Test Setup Initial Connection With BTS ControlPC And TM500 Control PC

Test Teardown Disconnect All Hosts

……

2.2 用例变量

${Throughput_Time} 300 sec

${TM500_LogList} L1THROUGHPUT

${UL_theory_rate1&7} 11250

……

${DL_theory_rate1&7_Txdiv&SISO} 32000

2.3 用例步骤

TM3 ThroughPut [Documentation]

Tx mode is close loop MIMO

TMx_throughput 20M_MIMO

${SCF_config1&7_MIMO}... MIMO 100

${TM500_LogList}…MIMO 18

${UL_theory_rate1&7}

${DL_theory_rate1&7_MIMO}

2.4 用例关键词

TMx_throughput [Documentation] steps to start throughput and check value

[Arguments] ${BTS_Configured} ${SCF_configuration}${TM500_LogList}

${configuration} ${DL_bandwith} ${UL_bandwith}

${UL_theory_rate} ${DL_theory_rate}

Restart_BTS_until_On air ${BTS_Configured} ${SCF_configuration}

Attach&Start_PPPOE ${TM500_LogList} ${configuration} ${DL_bandwith}

…… ${UL_bandwith}

Check_Throughput_Value ${UL_theory_rate} ${DL_theory_rate}

……

3 结果分析

在Robot测试工具中调用上述测试用例,并且在图1的测试环境上进行自动化测试,可以看到运行结果将输出到一个专有的文件夹中,该文件夹中包括report、log等子文件,可以以HTML格式显示。这些结果文件包含测试运行的具体信息,比如开始结束时间,用例总数,用例通过/失败率等。点击其中某个用例的链接,如图2所示,则可以看到一系列的详细测试用例步骤信息。并且点击其中任意的某个测试步骤的链接,也可以显示相对应的log信息。

如图2所示,该次测试结果为pass。在Robot测试平台上,根据具体的需求,也可植入代码从终端侧的log信息中得出吞吐量的最大/最小/平均值。以TM3模式为例,可以从log信息中得出下行吞吐量均值为80.2 Mbit/s,上行吞吐量均值为15.04 Mbit/s。由此得出达到基站设计吞吐量需求。

图2 吞吐量详细测试结果文件

def get_TM500_max_min_average_value_and_contrast_base(tm500_log, columnName, base_value, filter_data=1000):

try:

file_handle = file('%s' % (tm500_log), 'r')

except:

raise Exception, "TM500 log '%s' open failed"% tm500_log

lines = file_handle.readlines()data_list = []

data_ave=0

base_value=float(base_value)

filter_data = float(filter_data)

try:

for line in lines:

items = line.split(',')

if columnName in items:

position = items.index(columnName)

if re.match('^d.*d+:d+:d+:d+,d+,d+',line):

# exclude value which is not integer or low than filter

if items[position] == '-' or items[position]== '- ' or int(items[position]) <= filter_data :

continue

else:

data_value =int(items[position])

data_list.append(data_value)

data_ave=round(float(sum(data_list))/float(len(data_list)), 3)

finally:

print data_list

file_handle.close()

print data_ave

if data_ave >= base_value :

return True

else :

return False

4 结束语

传统的软件测试是采用手工测试的方法,劳动强度高,并且很单调,浪费大量的资源,消耗了测试人员大量的时间和精力。测试自动化使得软件测试进入了一个新的发展时期,是软件测试未来发展的必然趋势之一。但自动化测试目前并不能解决所有问题。例如自动化测试现阶段没有办法实现网络模式的选择,而传统的手工测试则可以弥补这一缺点。另外如果很多测试需要人为的在控制台上干涉,这样的测试也不适合用于自动化测试。因此在大力发展自动化测试的同时,在测试策略上如何更好的进行平衡选择,把自动化测试和手工测试有效的结合使得最大效能的达到测试目的是一项值得研究的课题。

[1] 彭木根,孙卓,王文博. WiMAX与3G LTE网络互联与融合技术研究[J]. 电信科学,2007,(1).

[2] 李新. TD-LTE无线网络覆盖特性浅析[J]. 电信科学,2009,(1).

[3] 沈嘉,索士强等编著. 3GPP长期演进(LTE)技术原理与系统设计[M]. 北京:人民邮电出版社,2008.

[4] IEEE 802.16. Broadband Wireless Access Working Group. IEEE 802.16m Evaluation Methodology Document[S]. 2009,1.

[5] 谢显中,雷维嘉. IMT-Adanced标准发展分析[J]. 信息与通信技术,2010,(12).

猜你喜欢

测试环境测试工具测试用例
边缘智力儿童及其智力测试工具的研究进展
全数字仿真测试环境在航天软件测试中的应用研究
基于SmartUnit的安全通信系统单元测试用例自动生成
雷达航迹处理测试环境构建方法研究
Http并发连接测试工具
网络设备自动化测试设计与实现
基于混合遗传算法的回归测试用例集最小化研究
福禄克推出先进的连接式测试工具系统
负离子纺织品检测方法分析
基于依赖结构的测试用例优先级技术