移动设备软件自动化测试集群系统及其测试方法

文档序号:9261294阅读:391来源:国知局
移动设备软件自动化测试集群系统及其测试方法
【技术领域】
[0001]本发明涉及移动终端测试领域,具体地涉及一种对移动设备中的软件进行自动化测试的系统以及方法。
【背景技术】
[0002]随着移动互联网的飞速发展,基于移动设备的应用软件越来越多,移动设备的功能也越来越强大,例如通过移动设备上网、浏览网页以及其他各种各样的应用。在此背景下,对移动设备的应用软件进行测试的需求也越来越大。在这些应用程序投放市场前需要经过测试来验证它们的有效性、安全性等。如果仅仅通过人工测试这些应用软件的话,测试成本过高,因此产生了应用软件的自动测试化工具。
[0003]例如,专利文献I (CN103164336A)公开了一种移动终端上应用程序的自动化测试方法以及装置。在该测试方法中,首先读取记录所有待测试对象的名称的配置文件,并将所有代测试对象的名称存储到对象链表;列出所有待测试对象的名称的列表,根据用户的输入选择待测试对象中测试会引起系统关闭或者测试过程停止的对象并从对象列表中删除被选中的对象;启动自动化测试过程;加载对象列表中的待测试对象;对对象列表中的待测试对象进行自动化测试。该专利文献I能够进行对待测对象的自动化测试,但是缺少对测试进行管理的功能。而且,专利文献I仅是用于安卓系统,无法跨操作系统进行测试。
[0004]因此,可以看到现有技术中的移动终端软件的自动测试化工具多数情况下还存在以下问题:
(1)现有的测试系统及方法缺少测试管理功能(包括测试版本、案例、被测设备状态、测试任务管理、测试结果统计)功能实现;
(2)现有的测试系统及方法没有实现跨操作系统(1s、android)测试在统一测试平台管理;
(3)现有的测试系统及方法未实现集群化,即执行器无法作数量、功能扩展,也无法实现远程部署;
(4)现有的测试执行单元内嵌在测试平台中,无法在不修改整个测试平台前提下新增新类型移动设备、新测试执行方法。
[0005]

【发明内容】

[0006]鉴于上述问题,本发明旨在提供一种能够为多类型测试提供统一测试管理以及测试执行操作的移动设备软件自动化测试集群系统及其测试方法。
[0007]本发明的移动设备软件自动化测试集群系统,其特征在于,包括:
测试管理模块,用于统一生成测试任务并且对测试任务进行收集、存储、分析和管理;一种或多种执行器,与所述测试管理模块分离部属,用于从所述测试管理模块获取测试任务并下发到下述移动设备测试代理模块,并且向所述测试管理模块反馈测试任务执行结果;
移动设备测试代理模块,用于执行所述测试任务并反馈结果至所述执行器。
[0008]优选地,所述执行器与所述测试管理模块通过网络进行连接。
[0009]优选地,所述执行器与所述移动设备测试代理模块通过USB或者WIFI连接。
[0010]优选地,所述测试管理模块具备:测试管理web前台,用于统一生成测试任务,并且用于定期轮询下述的测试数据库以更新任务执行状态;测试管理服务端,用于将由所述测试管理web前台生成的测试任务插入到下述的测试数据库;测试数据库,用于存储测试任务;命令接口服务,用于向指定的执行器发送命令并且接受执行器的反馈;数据库接口服务,用于为各执行器提供统一的测试数据库的接口,并且用于从所述测试数据库下载测试任务到执行器并且接受执行器的反馈。
[0011 ] 优选地,所述命令接口服务和所述数据库接口服务以独立进程形式与所述测试管理服务端隔离。
[0012]优选地,所述移动设备测试代理模块以软件形式被安装在移动设备中。
[0013]优选地,所述执行器的数量和功能具有可扩展性。
[0014]本发明的移动设备软件自动化测试方法,其特征在于,包括:
测试任务生成步骤,由测试管理web前台统一生成测试任务并且插入到测试数据库;测试任务获取步骤,通过执行器轮询查询测试数据库以获取测试任务;测试任务下发步骤,执行器将获取的测试任务下发至移动设备测试代理模块;测试任务执行步骤,移动设备测试代理模块执行测试任务并且将执行结果反馈至执行器;以及测试结果反馈步骤,执行器再将测试执行结果反馈到测试数据库。
[0015]优选地,在所述测试任务获取步骤中,执行器轮询查询测试数据库以异步方式获取测试任务。
[0016]优选地,在所述测试任务下发步骤中,执行器将获取的测试任务进行解析后分解为移动设备、案例为维度的案例执行命令并下发至移动设备测试代理模块。
[0017]优选地,在所述测试任务执行步骤中,移动设备测试代理模块执行测试任务并且将执行结果以并行方式反馈至执行器。
[0018]优选地,在所述测试任务下发步骤,执行器将获取的测试任务通过命令接口服务下发至移动设备测试代理模块。
[0019]优选地,在所述测试任务获取步骤中,通过执行器统一通过数据库接口轮询查询测试数据库获取测试任务。
[0020]根据本发明的移动设备软件自动化测试集群系统以及移动设备软件自动化测试方法,能够实现移动设备完整测试管理功能,并且能够统一测试管理服务和不同类型执行器来架构实现多类型测试(1S、android),由此能够提高自动化测试效率。而且,能够实现执行器的集群结构,可实现执行器备份、负荷分担功能,缩短自动化测试时间和提高测试执行可靠性,同时能够提供良好的功能可扩展性。
[0021]
【附图说明】
[0022]图1是表示本发明的移动设备软件自动化测试集群系统的概要图。
[0023]图2是表示本发明的移动设备软件自动化测试集群系统的系统结构图。
[0024]图3是表示本发明的移动设备软件自动化测试方法的步序图。
[0025]
【具体实施方式】
[0026]下面介绍的是本发明的多个实施例中的一些,旨在提供对本发明的基本了解。并不旨在确认本发明的关键或决定性的要素或限定所要保护的范围。
[0027]图1是表示本发明的移动设备软件自动化测试集群系统的概要图。
[0028]如图1所示,本发明的移动设备软件自动化测试集群系统大体分为三个部分:测试管理模块100、一种或多种执行器200、移动设备测试代理模块300。
[0029]测试管理模块100用于统一生成测试任务并且对测试任务进行收集、存储、分析和管理。
[0030]执行器200与测试管理模块100分离部属,用于从测试管理模块100获取测试任务并下发到移动设备测试代理模块300,并且向测试管理模块100反馈测试任务执行结果。
[0031]移动设备测试代理模块300用于执行所述测试任务并反馈结果至执行器200。
[0032]执行器200与测试管理模块100通过网络进行连接,执行器200与移动设备测试代理模块300通过USB或者WIFI连接。
[0033]图2是表示本发明的移动设备软件自动化测试集群系统的系统结构图。
[0034]如图2所示,图1中的测试管理模块100包括:测试管理web前台101、测试管理服务端102、测试数据库103、命令接口服务104、数据库接口服务105。
[0035]测试管理web前台101用于统一生成测试任务并且用于定期轮询测试数据库103以更新任务执行状态。测试管理服务端102用于将由测试管理web前台101生成的测试任务插入到测试数据库103。
[0036]测试数据库103用于存储测试任务。命令接口服务104用于向指定的执行器发送命令并且接受执行器的反馈。数据库接口服务105用于为各执行器提供统一的测试数据库的接口,并且用于从测试数据库103下载测试任务到执行器并且接受执行器的反馈。
[0037]其中,测试管理服务端102、命令接口服务104和数据库接口服务105 (面向执行器200)能够部属在同一物理服务器上,但是命令接口服务以独立进程形式与测试管理服务端102隔离。
[0038]在图2中,作为执行器200,不例表不为多个android执行器I…android执行器η、以及一个1s执行器I。作为执行器200的Android执行器或1s执行器从测试数据库103获取测试任务队列,向移动设备测试代理模块300下发执行命令,并且向测试管理服务模块100反馈测试任务执行结果。执行器200能够进行移动设备连接管理(连接监测、自动重连、上报设备状态)
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1