一种无线通信质量自动测试系统以及方法

文档序号:7864913阅读:268来源:国知局
专利名称:一种无线通信质量自动测试系统以及方法
技术领域
本发明涉及通信质量测试技术,尤其涉及一种无线通信质量自动测试系统以及方法。
背景技术
在现有的手机自动化测试中,以测试终端为主的测试方法大多数通过AT指令控制终端做一些CS或PS业务,观察语音业务和数据业务,这种方法可以满足一些简单的终端自动拨打,收发短信等测试用例,但无法满足真实环境中商用终端的测试需求,并且商用终端测试出的问题,测试终端无法复现。因此在真实业务测试中商用终端逐渐取代了测试终端,更贴近真实使用场景。但是现有的基于真实场景的测试方案寥寥无几。现有的Android Instrumentation测试和JUnit测试均采用JAVA开发,这样要求测试人员的脚本编写能力过高,并且不能很好的管理测试用例,不利于大量、复杂的长时间 的压力测试。利用Android开发套件中的Monkey命令行工具,可以较好地进行压力测试。它可以在模拟器和设备上运行,其原理是通过Monkey产生随机脉冲,并随机产生大量事件对软件的负载能力进行测试。该工具主要应用在压力和可靠性测试上,对于真实场景的贴近用户感知的实际操作则略显不足,并且命令行的方式不利于测试人员管理编辑测试用例。目前,利用Android开发套件中的Monkeyrunner API进行测试的方法,较为实用,通过强大的API函数和简洁的Python语言编写脚本完成对手机的控制。是应用最为广泛的手机自动化测试方法,但在实际应用中该方法也受到许多问题的制约。如果人工控制商用终端执行业务,则大大增加人力消耗,并且繁重的重复工作造成测试人员压力增加极容易出现错误。对于大规模的性能测试和压力测试这种方式无法实施。现有的自动化测试方法大多针对商用终端的稳定性和性能,并没有考虑如何测试无线通信网络的CS和PS业务情况,缺乏针对性的解决方案测试无线通信网络。而且,现有测试终端虽然满足自动拨打和数据业务,也有对外开放的AT指令接口,但是测试终端并不是商用产品,在用户控制和自身功能逻辑方面都与真实的商用终端存在差异。从感知用户体验方面测试终端的测试方案并不能满足测试需求。

发明内容
(一)技术问题本发明要解决的问题是提供一种针对商用手机终端的无线通信质量自动化测试方法,从模拟真实操作出发,测试手机的语音传输质量、接通率、掉话率和数据业务的实时速率。(二)技术方案本发明提供一种无线通信质量自动测试系统,该系统包括控制装置、监测仪表和管理服务器,其中所述控制装置分别连接多个待测无线终端,用于利用应用程序编程接口 API直接启动、操作待测无线终端中的应用程序;监测仪表、管理服务器分别通过网络和所述控制装置相连接,所述管理服务器向所述控制装置提供测试用例,所述测试用例用来直接启动、操作待测无线终端中的应用程序,监测仪表显示控制装置的测试结果。可选的,所述系统 包括屏蔽柜,所述多个待测无线终端放置在所述屏蔽柜内,所述屏蔽柜设置有射频口和风扇换气口。可选的,所述控制装置通过HUB连接所述多个待测无线终端。本发明还提供一种无线终端通信质量自动测试方法,该方法包括从数据库中获取测试用例;通过应用程序编程接口 API利用所述测试用例直接启动、操作待测无线终端中的应用程序;在每次操作所述应用程序后,获取所述应用程序的执行结果;判断执行结果和预期结果是否一致,如果正确,则利用所述应用程序编程接口继续执行所述应用程序,否则将执行结果存储在日志文件中,然后继续执行所述应用程序或者其它应用程序;输出所述日志文件给监测仪表或者显示器。可选的,从管理服务器的数据库中获取测试用例,并利用所述测试用例来启动、操作待测无线终端中的应用程序。可选的,在直接启动待测无线终端中的应用程序前,设定所述测试用例的执行顺序和执行次数。可选的,通过远程登录待测无线终端,自动拨打指定号码;获取拨打结果并将拨打结果存储在日志文件中。可选的,从数据库获取测试用例,并利用所述测试用例远程登录待测无线终端。可选的,通过在待测无线终端设置手机流量实时统计模块和流量回放模块,实时监测上传和/或下载速率,并将流量数据存储在本地数据文件中。可选的,所述利用应用程序编程接口直接启动、操作待测无线终端中的应用程序具体包括通过查看应用程序中视图和按钮的ID号,直接模拟点击这些视图或者按钮。可选的,编辑或者编写测试用例,并将编辑或者编写好的测试用例导入到所述数据库中。可选的,利用Monkeyrunner API函数编辑或者编写所述测试用例。(三)技术效果本发明通过控制装置获取并执行管理服务器的数据库中的测试用例,能够自动对无线终端进行各种性能的测试,提高了测试效率,节省了人力消耗。


图I表示本发明无线通信质量自动测试系统的结构图;图2表示本发明实施例2的无线终端通信质量自动测试方法的流程图;图3表示本发明实施例3的测试用例编写、执行时的流程图。
具体实施例方式实施例I :随着智能手机市场的不断扩大,以android系统为主导的智能手机如雨后春笋般涌现出来。该系统手机市场占有率逐年提高,并且适应(TD-LTE)3G网络的手机逐渐成为主流。因此运营商更加关注这些新型终端在现有(TD-LTE)3G网络中的表现力和用户感知性。主要表现在以量化数据MOS评分衡量的语音传输质量和以平均吞吐率,最大吞吐率,PDP激活成功率,中断率,丢包率等指标衡量数据业务质量两方面。但是在实验中,面对如此多种类的终端和测试场景,人工测试显然是不可取的。因此如何构建一套无线通信质量自动化测试方法和系统(能够用于对Android商用终端进行测试)成为至关重要的问题。本发明提供一种无线通信质量自动测试系统,如图I所示,该系统包括控制装置(或者控制台系统)、仪表(或者称为检测仪表)和管理服务器(或者称为用例管理服务器),其中·所述控制装置(或者控制台系统)分别连接多个待测无线终端,用于利用应用程序编程接口 API直接启动、操作待测无线终端中的应用程序;监测仪表、管理服务器分别通过网络(包括通用接口数据总线或者TCP/IP协议层)和所述控制装置(或控制台系统)相连接,所述管理服务器向所述控制装置提供测试用例,所述测试用例用来直接启动、操作待测无线终端中的应用程序,监测仪表显示控制装置的测试结果。通过开发上述测试系统,从模拟真实操作出发,测试手机的语音传输质量、接通率、掉话率和数据业务的实时速率。本发明描述的上述测试系统,可适用于各类Android系统手机,利用该手机实现无线通信设备的室内和外场自动化测试。也可用于各式Android智能手机的互操作测试。如图I所示,所述测试系统还可包括屏蔽柜,所述多个待测无线终端放置在所述屏蔽柜内,待测无线终端可通过USB数据线连接到所述屏蔽柜,已进行数据信号的传送和/或供电。所述屏蔽柜设置有射频口和风扇换气口。屏蔽柜可通过USB数据线与控制装置(或者控制台系统)连接。通过使用屏蔽柜,可减少环境对测试结果的影响,能够取得更为准确的测试结果。可选的,如图I所示,所述控制装置通过HUB连接所述多个待测无线终端。可选的,所述控制装置为测试PC机。可选,如图I所示,所述控制装置可连接网元设备,网元设备为所述控制装置和管理服务器提供TD信号接入射频口。可选的,所述控制装置可以配置成一套基于管理服务器的测试用例管理装置,测试用例的执行过程可直接通过所述测试用例管理装置在管理平台上编辑,并上传脚本到管理服务器。在执行测试用例时,可通过辅助管理程序连接管理服务器的用例库,通过友好界面直接对测试用例执行开始、暂停和停止等命令,并能将脚本的执行结果反馈到辅助管理程序中,并且通过数据库表的导入导出可以完成用例的导入和备份存储。如此,解决了积累大量用例后测试用例不利于管理的问题。实施例2
本发明还提供一种无线终端通信质量自动测试方法,如图2所示,该方法包括SI.从数据库中获取测试用例;S2.通过应用程序编程接口 API利用所述测试用例直接启动、操作待测无线终端中的应用程 序;S3.在每次操作所述应用程序后,获取所述应用程序的执行结果;S4.判断执行结果和预期结果是否一致,如果正确,则利用所述应用程序编程接口继续执行所述应用程序,否则将执行结果存储在日志文件中,然后继续执行所述应用程序或者其它应用程序;S5.输出所述日志文件给监测仪表。上述技术方案包括三大部分控制手机、中间结果反馈和最终结果输出,实现测试用例运行过程中的信息反馈功能,监控无线终端实际运行中的每一步过程,确保测试用例执行的准确性。上述技术方案可适用于各类Android系统手机,利用该手机实现无线通信设备的室内和外场自动化测试。也可用于各式Android智能手机的互操作测试。在判断执行结果和预期结果是否一致时,可通过中间过程的截图比对控制用例执行过程,正确则继续执行,错误则记录log跳出函数。最后输出执行结果,方便测试人员定位问题,完善脚本。可选的,在测试前,编辑或者编写测试用例,并将编辑或者编写好的测试用例导入到所述数据库中。通过定制测试用例,力求覆盖手机应用的各个业务场景并且完全自动化的测试解决了测试人力投入。测试时,从管理服务器的数据库中获取测试用例,并利用所述测试用例来启动、操作待测无线终端中的应用程序。在直接启动待测无线终端中的应用程序前,可设定所述测试用例的执行顺序和执行次数。除了通过测试无线终端的应用程序来测试数据业务,还可测试无线终端的通话功能,比如通过远程登录待测无线终端,自动拨打指定号码;获取拨打结果并将拨打结果存储在日志文件中。还可通过在待测无线终端设置手机流量实时统计模块和流量回放模块,实时监测上传和/或下载速率,并将流量数据存储在本地数据文件中,方便后续回放查看。实施例3 本实施例基于Monkeyrunner工具进行测试用例的脚本的编写。通过改进的Android系统的Monkeyrunner API函数,能够编写出通用的具有较好鲁棒性的脚本。对于无线终端的CS业务,如图3所示,利用实施例I的测试系统执行测试用例的流程如下Sll.连接指定设备;S12.采用Monkeyrunner提供的adb shell命令自动拨打指定号码;S13.输出拨打结果存储在log文件中。对于无线终端的PS业务,如图3所示,利用实施例I的测试系统执行测试用例的流程如下S21.连接指定设备;S22.采用Monkeyrunner API中的StartActivity函数直接启动安卓应用程序;S23.通过hierarchyviewer工具查看软件中视图和按钮的ID号,然后直接模拟点击这些视图或按钮,避免采用坐标方式定位按钮,造成脚本不支持其他分辨率商用终端的问题;S24.在执行完毕后查看最终结果是否与预期结果一致,并输出log文件,优选的方式,包括将每次操作的中间结果和预期结果进行比对(S241),如果错误,则输出log文件(S242),如果正确,则继续进行其它操作(S243),如模拟电极其他按钮。实施例4 现有的基于Monkeyrunner脚本控制的手机自动化测试方案,忽视了脚本运行过程中,手机执行情况的监控和信息反馈,一旦测试完成发现执行失败,很难对问题进行定位。本实施例在实施例3的基础上,针对这一问题,在执行测试用例过程中,还可引入中间 结果控制和反馈的思路,即采用当前过程截图与本地模板库比对的方式,判断当前执行步骤是否正确。正确则继续执行,失败则输出log,跳过该用例,执行下一个用例。由于在脚本编写中加入中间结果比对的环节,能够及时反馈手机终端的实际运行状态,控制脚本运行过程。这样做方便测试人员后续定位问题,修改脚本。实施例5本实施例体现通过辅助软件管理脚本和执行脚本、并且实时监测PS业务流量情况的整体测试思想。在实际的脚本运行中,本实施例在实施例3的基础上采用自主研发的辅助工具,进行用例执行管理。首先连接数据库获取已编辑好的用例,然后操作管理用例的执行顺序和执行次数,并在窗口中显示输出结果。方便测试人员查看用例执行结果。在无线终端(比如商用手机终端)PS业务测试中,流量统计情况直观的反应了网络的性能。因此在S-ATP中集成了手机流量实时统计模块以及流量回放模块,通过对实时网络上传下载速率的实时监控查看网络稳定性以及最大带宽。并将流量数据存储在本地数据文件中,方便后续回放查看。通过辅助软件管理脚本和执行脚本,并且实时监测PS业务流量情况的整体测试思想。综上所述,本发明通过定制具有针对性的测试用例,使用真实商用终端,从模拟真实操作出发,测试手机的语音传输质量、接通率、掉话率和数据业务的实时速率,平均吞吐量,最大吞吐量等;本发明通过利用辅助软件管理和执行用例,可自动化执行测试用例,进行功能性测试、回归测试和性能压力测试,可提高测试效率,释放人力资源;本发明优化基于Monkeyrunner的脚本编写方法,采用“通过hierarchyviewer工具查看软件中视图和按钮的ID号,直接点击”的方式实现不基于坐标的模拟点击操作,避免了更换不同分辨率手机终端后脚本无法使用的问题,使测试用例具有良好的通用姓和较好的鲁棒性,释放脚本维护的人力资源,增加测试效率;本发明通过“中间过程的截图比对控制用例执行过程,正确则继续执行,错误则记录log跳出函数,最后输出执行结果”实现脚本运行过程中的信息反馈功能,能够监控手机实际运行中的每一步过程,确保用例执行的准确性,方便测试人员定位问题、完善脚本。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种无线通信质量自动测试系统,其特征在于,该系统包括控制装置、监测仪表和管理服务器,其中 所述控制装置分别连接多个待测无线终端,用于利用应用程序编程接口 API直接启动、操作待测无线终端中的应用程序; 监测仪表、管理服务器分别通过网络和所述控制装置相连接,所述管理服务器向所述控制装置提供测试用例,所述测试用例用来直接启动、操作待测无线终端中的应用程序,监测仪表用于显示控制装置的测试结果。
2.如权利要求I所述的无线通信质量自动测试系统,其特征还在于,所述系统包括屏蔽柜,所述多个待测无线终端放置在所述屏蔽柜内,所述屏蔽柜设置有射频口和风扇换气口。
3.如权利要求I所述的无线通信质量自动测试系统,其特征还在于 所述控制装置通过HUB连接所述多个待测无线终端。
4.一种无线终端通信质量自动测试方法,其特征在于,该方法包括 从数据库中获取测试用例; 通过应用程序编程接口 API利用所述测试用例直接启动、操作待测无线终端中的应用程序; 在每次操作所述应用程序后,获取所述应用程序的执行结果; 判断执行结果和预期结果是否一致,如果正确,则利用所述应用程序编程接口继续执行所述应用程序,否则将执行结果存储在日志文件中,然后继续执行所述应用程序或者其它应用程序; 输出所述日志文件给监测仪表或者显示器。
5.如权利要求4所述的无线终端通信质量自动测试方法,其特征在于 从管理服务器的数据库中获取测试用例,并利用所述测试用例来启动、操作待测无线终端中的应用程序。
6.如权利要求5所述的无线终端通信质量自动测试方法,其特征在于 在直接启动待测无线终端中的应用程序前,设定所述测试用例的执行顺序和执行次数。
7.如权利要求4所述的无线终端通信质量自动测试方法,其特征在于 通过远程登录待测无线终端,自动拨打指定号码; 获取拨打结果并将拨打结果存储在日志文件中。
8.如权利要求4所述的无线终端通信质量自动测试方法,其特征在于 从数据库获取测试用例,并利用所述测试用例远程登录待测无线终端。
9.如权利要求4所述的无线终端通信质量自动测试方法,其特征还在于 通过在待测无线终端设置手机流量实时统计模块和流量回放模块,实时监测上传和/或下载速率,并将流量数据存储在本地数据文件中。
10.如权利要求4所述的无线终端通信质量自动测试方法,其特征还在于 所述利用应用程序编程接口直接启动、操作待测无线终端中的应用程序具体包括 通过查看应用程序中视图和按钮的ID号,直接模拟点击这些视图或者按钮。
11.如权利要求5所述的无线终端通信质量自动测试方法,其特征还在于,该方法还包括 编辑或者编写测试用例,并将编辑或者编写好的测试用例导入到所述数据库中。
12.如权利要求11所述的无线终端通信质量自动测试方法,其特征还在于 利用Monkeyrunner API函数编辑或者编写所述测试用例。
全文摘要
本发明提供一种无线通信质量自动测试系统,该系统包括控制装置、监测仪表和管理服务器,其中所述控制装置分别连接多个待测无线终端,用于利用应用程序编程接口API直接启动、操作待测无线终端中的应用程序;监测仪表、管理服务器分别通过网络和所述控制装置相连接,所述管理服务器向所述控制装置提供测试用例,所述测试用例用来直接启动、操作待测无线终端中的应用程序,检测仪表显示控制装置的测试结果。本发明通过利用辅助软件管理和执行测试用例,可自动化执行测试用例,进行功能性测试、回归测试和性能压力测试。提了高测试效率,释放了人力资源。
文档编号H04M1/24GK102938800SQ20121044218
公开日2013年2月20日 申请日期2012年11月7日 优先权日2012年11月7日
发明者夏青, 侯磊, 刘须华, 邓召基 申请人:大唐移动通信设备有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1