一种移动端UI自动化测试方法及系统技术方案

技术编号:24995630 阅读:38 留言:0更新日期:2020-07-24 17:58
本发明专利技术提供了一种移动端UI自动化测试系统,所述系统包括后台管理模块、任务调度模块、以及终端执行模块;所述台管理模块负责数据上的管理,所述任务调度模块将数据打包为可执行的任务下发给终端,所述终端执行模块将执行的结果进行反馈操作;所述系统通过后台管理模块来实现UI自动化测试任务的创建、及脚本的配置;再通过任务调度模块配置任务的执行参数,并下发到终端进行具体的执行;最后由终端执行模块执行下发的请求,完成一系列执行的过程中进行对应的数据收集,并反馈给后台管理模块;本发明专利技术可以同时执行多台设备进行自动化测试,有效的提高的自动化测试的效率。

【技术实现步骤摘要】
一种移动端UI自动化测试方法及系统
本专利技术涉及软件测试
,特别是一种移动端UI自动化测试方法及系统。
技术介绍
软件开发过程中,软件测试是不可或缺的一个环节,随着移动智能设备的普及,在移动设备方面的测试质量要求尤为重要。开发及测试都需要通过工具去辅助软件测试,从而提升软件质量。其中UI(用户界面)自动化作为模拟用户界面行为的操作,起到举足轻重的地位。目前测试的执行脚本框架有很多种,比如:appium脚本框架、calabash脚本框架、IOSUIAutomation脚本框架、robotium脚本框架等。每个框架都有着各自的编写规范及环境,都需要编写对应的脚本,但是针对不同的设备,脚本可能存在着各种适配问题,同时很多软件测试场景不支持多台设备同时执行一份的自动化脚本,在自动化测试实施的时候会存在较多问题。而现有的软件测试存在如下缺点:缺点一,目前的移动端UI自动化大多是需要通过测试员根据对应框架的编写规范来编写对应脚本,对测试员的技能有一定的要求,需要测试员具备一定的语言编码能力。随着对应框架的升级,测试员还需要针对历史脚本进行针对性维护,如果涉及脚本量级多的话,维护成本会随之提升。缺点二,目前的移动端UI自动化大多是通过编写对应的脚本,再通过对应的框架进行自动化执行。在单台设备执行UI自动化的时候一般不会有问题,针对多部设备同时执行一个脚本的时候,存在很多场景是无法执行的。比如:有互踢机制的登陆应用,多台设备同时执行UI自动化,后进行登陆执行的设备将会把前者的账号踢下去,这样就导致UI自动化的异常中断。缺点三,目前的移动端UI自动化生成的结果会以testcase(测试用例)为单位来生成对应的测试报告,并告知哪些测试通过,哪些测试不通过。但是对应测试结果的分析来说,只是知道某一个步骤出现异常,并不能快速排查到UI自动化过程中出现的问题。缺点四,目前手机设备琳琅满目,以安卓为例,目前市面上的机型很多,为保证软件能够在更多的设备上正常运行,手机适配环节必不可少。目前手机适配多以人工手机适配为主,但是受制于资金等各种因素,一个测试员手上可以持有的设备往往是有限制的,另一方面人工的方式来进行适配覆盖成本投入会比较大。
技术实现思路
为克服上述问题,本专利技术的目的是提供一种移动端UI自动化测试系统,可以同时执行多台设备进行自动化测试,有效的提高的自动化测试的效率。本专利技术采用以下方案实现:一种移动端UI自动化测试系统,所述系统包括后台管理模块、任务调度模块、以及终端执行模块;所述后台管理模块负责数据上的管理,所述任务调度模块将数据打包为可执行的任务下发给终端,所述终端执行模块将执行的结果进行反馈操作;所述系统通过后台管理模块来实现UI自动化测试任务的创建、及脚本的配置;再通过任务调度模块配置任务的执行参数,并下发到终端进行具体的执行;最后由终端执行模块执行下发的请求,完成一系列执行的过程中进行对应的数据收集,并反馈给后台管理模块。进一步的,所述后台管理模块进一步具体为:后台管理模块提供一用户操作管理的界面,通过界面创建对应的测试任务,创建一个测试任务后,后台管理模块会默认生成一个任务ID,并以此选择操作平台和操作平台对应的测试框架;再进行脚本的配置,界面提供自定义脚本操作或者非自定义脚本操作,自定义脚本操作即用户自定义测试用例的脚本,用户按照对应测试框架提供的模板接入编写测试用例的脚本并上传脚本即完成任务的创建;非自定义脚本操作即提供一脚本配置页面,通过脚本配置页面将测试数据导入,并进行新增用例,每个用例都会生成唯一值用例ID,并配置用例执行的具体行为,每个行为都会生成唯一值行为ID,该行为配置分为两类,一类是通用行为配置,通用行为包含但不局限于:保存截图、等待时间、上下左右滑动;另外一类是基于控件的行为配置。进一步的,所述任务调度模块进一步具体为:任务配置后,针对任务发起执行,上传对应需要测试的测试包;则任务调度模块提供一个restfulapi,通过输入对应的任务ID即task_id和测试包下载链接,即能通过restfulapi发起对应测试;上传完安装包之后系统会列出当前能使用的移动端设备列表,供用户进行挑选;当选中需要测试的移动端设备,点击开始执行后,任务调度模块就会创建一条执行记录,并生成唯一值标识记录record_id,并将该记录record_id下发给终端进行执行;同时,任务调度所上传的测试包、所选择的测试的移动端设备及对应的task_id都会被存入数据库中。进一步的,所述终端执行模块进一步具体为:终端执行模块负责监听接收服务端下发的请求,判断是否有命令下发;接到服务端下发的记录record_id,终端会发起一次请求查阅该记录record_id上所配置的信息,解析出当前终端执行所需要的相关参数,所述相关参数包括:测试的移动端设备列表、对应的测试框架、对应的task_id;通过解析出来的移动端设备列表,依次发起对应测试移动端设备的调用,执行对应的框架脚本;框架脚本通过task_id查询该task_id下的所有配置信息,包括初始化的数据及需要执行的用例、行为;终端会遍历执行每一个用例及每个用例下的action行为;执行的过程中会记录当前的执行进度,在脚本全部执行完成的时候,会将当前的测试结果反馈给服务器,并通知对应的测试人员,能查阅对应的测试报告;在后台管理模块上能查阅该任务的测试结果;当某个用例执行错误的时候,能具体定位到是哪个用例的哪个行为操作错误,并查阅到对应的行为执行错误日志。进一步的,所述测试结果的信息包括用例通过率、每个用例的行为通过概率、稳定性错误记录、行为执行错误日志、以及截图信息。本专利技术还提供了一种移动端UI自动化测试方法,所述方法包括如下步骤:步骤S1、首先实现移动端UI自动化测试任务的创建、及脚本的配置;步骤S2、配置任务的执行参数,并下发到终端进行具体的执行;步骤S3、终端执行下发的请求,完成一系列执行的过程中进行对应的数据收集,并反馈给服务器。进一步的,所述步骤S1进一步具体为:提供一用户操作管理的界面,通过界面创建对应的测试任务,创建一个测试任务后,默认生成一个任务ID,并以此选择操作平台和操作平台对应的测试框架;再进行脚本的配置,界面提供自定义脚本操作或者非自定义脚本操作,自定义脚本操作即用户自定义测试用例的脚本,用户按照对应测试框架提供的模板接入编写测试用例的脚本并上传脚本即完成任务的创建;非自定义脚本操作即提供一脚本配置页面,通过脚本配置页面将测试数据导入,并进行新增用例,每个用例都会生成唯一值用例ID,并配置用例执行的具体行为,每个行为都会生成唯一值行为ID,该行为配置分为两类,一类是通用行为配置,通用行为包含但不局限于:保存截图、等待时间、上下左右滑动;另外一类是基于控件的行为配置。进一步的,所述步骤S2进一步具体为:步骤S21、任务配置后,针对任务发起执行,上传对应需要测试的测试包;同时提供一个restfu本文档来自技高网
...

【技术保护点】
1.一种移动端UI自动化测试系统,其特征在于:所述系统包括后台管理模块、任务调度模块、以及终端执行模块;所述后台管理模块负责数据上的管理,所述任务调度模块将数据打包为可执行的任务下发给终端,所述终端执行模块将执行的结果进行反馈操作;/n所述系统通过后台管理模块来实现UI自动化测试任务的创建、及脚本的配置;再通过任务调度模块配置任务的执行参数,并下发到终端进行具体的执行;最后由终端执行模块执行下发的请求,完成一系列执行的过程中进行对应的数据收集,并反馈给后台管理模块。/n

【技术特征摘要】
1.一种移动端UI自动化测试系统,其特征在于:所述系统包括后台管理模块、任务调度模块、以及终端执行模块;所述后台管理模块负责数据上的管理,所述任务调度模块将数据打包为可执行的任务下发给终端,所述终端执行模块将执行的结果进行反馈操作;
所述系统通过后台管理模块来实现UI自动化测试任务的创建、及脚本的配置;再通过任务调度模块配置任务的执行参数,并下发到终端进行具体的执行;最后由终端执行模块执行下发的请求,完成一系列执行的过程中进行对应的数据收集,并反馈给后台管理模块。


2.根据权利要求1所述的一种移动端UI自动化测试系统,其特征在于:所述后台管理模块进一步具体为:后台管理模块提供一用户操作管理的界面,通过界面创建对应的测试任务,创建一个测试任务后,后台管理模块会默认生成一个任务ID,并以此选择操作平台和操作平台对应的测试框架;再进行脚本的配置,界面提供自定义脚本操作或者非自定义脚本操作,自定义脚本操作即用户自定义测试用例的脚本,用户按照对应测试框架提供的模板接入编写测试用例的脚本并上传脚本即完成任务的创建;非自定义脚本操作即提供一脚本配置页面,通过脚本配置页面将测试数据导入,并进行新增用例,每个用例都会生成唯一值用例ID,并配置用例执行的具体行为,每个行为都会生成唯一值行为ID,该行为配置分为两类,一类是通用行为配置,通用行为包含但不局限于:保存截图、等待时间、上下左右滑动;另外一类是基于控件的行为配置。


3.根据权利要求1所述的一种移动端UI自动化测试系统,其特征在于:所述任务调度模块进一步具体为:任务配置后,针对任务发起执行,上传对应需要测试的测试包;则任务调度模块提供一个restfulapi,通过输入对应的任务ID即task_id和测试包下载链接,即能通过restfulapi发起对应测试;
上传完安装包之后系统会列出当前能使用的移动端设备列表,供用户进行挑选;
当选中需要测试的移动端设备,点击开始执行后,任务调度模块就会创建一条执行记录,并生成唯一值标识记录record_id,并将该记录record_id下发给终端进行执行;同时,任务调度所上传的测试包、所选择的测试的移动端设备及对应的task_id都会被存入数据库中。


4.根据权利要求1所述的一种移动端UI自动化测试系统,其特征在于:所述终端执行模块进一步具体为:终端执行模块负责监听接收服务端下发的请求,判断是否有命令下发;
接到服务端下发的记录record_id,终端会发起一次请求查阅该记录record_id上所配置的信息,解析出当前终端执行所需要的相关参数,所述相关参数包括:测试的移动端设备列表、对应的测试框架、对应的task_id;
通过解析出来的移动端设备列表,依次发起对应测试移动端设备的调用,执行对应的框架脚本;
框架脚本通过task_id查询该task_id下的所有配置信息,包括初始化的数据及需要执行的用例、行为;
终端会遍历执行每一个用例及每个用例下的action行为;
执行的过程中会记录当前的执行进度,在脚本全部执行完成的时候,会将当前的测试结果反馈给服务器,并通知对应的测试人员,能查阅对应的测试报告;
在后台管理模块上能查阅该任务的测试结果;当某个用例执行错误的时候,能具体定位到是哪个用例的哪个行为操作错误,并查阅到对应的行为执行错误日志。


5.根据权利要求6所述的一种移动端UI自动化测试系统,其特征在于:所述测试结果的信息包括用例通过率、每个用...

【专利技术属性】
技术研发人员:刘德建梁益冰苏慧玲吴林旭林贻概林剑锋林琛
申请(专利权)人:福建天晴数码有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1