UI测试方法、设备及可读存储介质与流程

文档序号:15445235发布日期:2018-09-14 23:17阅读:184来源:国知局

本发明涉及ui自动化测试技术领域,尤其涉及一种ui测试方法、ui测试设备及计算机可读存储介质。



背景技术:

现有ui(userinterface,用户界面)自动化测试技术中,通常使用python、java等脚本语言编写自动化测试脚本,然后再调用appium、seleium等开源api进行手机ui自动化测试。

现有ui自动化测试技术需要依赖开发人员开发自动化测试脚本,同时还会产生大量重复代码和自动化测试脚本文件,不仅测试效率低,而且开发与管理成本高。



技术实现要素:

本发明的主要目的在于提供一种ui测试方法、ui测试设备及计算机可读存储介质,旨在解决如何提升ui自动化测试的测试效率并降低开发与管理成本的技术问题。

为实现上述目的,本发明提供一种ui测试方法,所述ui测试方法包括以下步骤:

配置初始化服务接口参数与操作服务接口参数;

基于所述初始化服务接口参数,调用对应的初始化服务接口,以连接待测终端并启动所述待测终端内的待测应用;

基于所述操作服务接口参数,调用对应的操作服务接口,以控制所述待测终端对所述待测应用执行相应的ui测试操作;

接收所述待测终端返回的ui测试结果。

可选地,所述初始化服务接口参数包括:设备初始化参数与应用初始化参数;所述初始化服务接口包括:待测终端初始化服务接口与待测应用初始化服务接口;

所述基于所述初始化服务接口参数,调用对应的初始化服务接口,以连接待测终端并启动所述待测终端内的待测应用包括:

基于所述设备初始化参数,调用所述待测终端初始化服务接口,以供通过调用测试工具的api与待测终端建立wifi连接;

基于所述应用初始化参数,调用所述待测应用初始化服务接口,以供通过调用测试工具的api启动所述待测终端内的待测应用。

可选地,所述操作服务接口包括:应用操作服务接口、操作验证服务接口、获取应用页面服务接口以及获取截图服务接口;

所述基于所述操作服务接口参数,调用对应的操作服务接口,以控制所述待测终端对所述待测应用执行相应的ui测试操作包括:

基于所述操作服务接口参数的数值,确定对应的操作服务接口;

调用所述操作服务接口,以供通过调用测试工具的api控制所述待测终端对所述待测应用执行相应的ui测试操作。

可选地,所述初始化服务接口封装有初始化操作的脚本功能代码;所述操作服务接口封装有ui测试操作的脚本功能代码;

其中,所述ui测试操作包括:点击操作、长按操作、滑动操作、文本输入操作、解锁操作、js脚本操作、启动与关闭应用操作、后退与返回操作、打开与隐藏键盘操作、锁屏操作、上下左右滑动操作、横屏竖屏显示操作。

可选地,所述操作服务接口还封装有屏幕坐标定位与界面控件定位的脚本功能代码。

可选地,所述配置操作服务接口参数包括:

配置用于实现业务流程所对应的ui测试操作集;

其中,ui测试操作集中包含有多个业务操作子集,一个业务操作子集对应实现一个业务流程,每个业务操作子集包含有多个排列组合的操作服务接口参数。

可选地,所述基于所述操作服务接口参数,调用对应的操作服务接口,以控制所述待测终端对所述待测应用执行相应的ui测试操作包括:

基于所述ui测试操作集,依次调用对应的操作服务接口,以控制所述待测终端依次对所述待测应用执行相应业务的ui测试操作。

进一步地,为实现上述目的,本发明还提供一种ui测试设备,所述ui测试设备包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的ui测试程序,所述ui测试程序被所述处理器执行时实现如上述任一项所述的ui测试方法的步骤。

进一步地,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有ui测试程序,所述ui测试程序被处理器执行时实现如上述任一项所述的ui测试方法的步骤。

本发明将ui测试所用到的所有操作参数化,并将各操作封装成可被调用的服务接口,进而避免手动编写自动化测试脚本,具体实现方式包括:ui测试设备配置初始化服务接口参数与操作服务接口参数;然后ui测试设备再基于初始化服务接口参数,调用对应的初始化服务接口,以连接待测终端并启动待测终端内的待测应用;以及基于操作服务接口参数,调用对应的操作服务接口,以控制待测终端对待测应用执行相应的ui测试操作;最后再接收待测终端返回的ui测试结果。本发明中,整个ui测试过程无需手动编写自动化测试脚本,测试人员只需通过ui测试设备配置相关服务接口参数即可,进而提高了ui自动化测试效率,并降低了管理与测试成本。

附图说明

图1为本发明ui测试设备实施例方案涉及的设备硬件运行环境的结构示意图;

图2为本发明ui测试方法一实施例的流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

本发明提供一种ui测试设备。

参照图1,图1为本发明ui测试设备实施例方案涉及的设备硬件运行环境的结构示意图。

本发明实施例的ui测试设备可以是计算机、服务器等设备。

如图1所示,该ui测试设备可以包括:处理器1001,例如cpu,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。

本领域技术人员可以理解,图1中示出的ui测试设备的硬件结构并不构成对ui测试设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及ui测试程序。其中,操作系统是管理和控制ui测试设备与软件资源的程序,支持网络通信模块、用户接口模块、ui测试程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1004;用户接口模块用于管理和控制用户接口1003。

在图1所示的ui测试设备硬件结构中,网络接口1004主要用于连接系统后台,与系统后台进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;ui测试设备通过处理器1001调用存储器1005中存储的ui测试程序,并执行以下操作:

配置初始化服务接口参数与操作服务接口参数;

基于所述初始化服务接口参数,调用对应的初始化服务接口,以连接待测终端并启动所述待测终端内的待测应用;

基于所述操作服务接口参数,调用对应的操作服务接口,以控制所述待测终端对所述待测应用执行相应的ui测试操作;

接收所述待测终端返回的ui测试结果。

进一步地,所述初始化服务接口参数包括:设备初始化参数与应用初始化参数;所述初始化服务接口包括:待测终端初始化服务接口与待测应用初始化服务接口;ui测试设备通过处理器1001调用存储器1005中存储的ui测试程序还执行以下操作:

基于所述设备初始化参数,调用所述待测终端初始化服务接口,以供通过调用测试工具的api与待测终端建立wifi连接;

基于所述应用初始化参数,调用所述待测应用初始化服务接口,以供通过调用测试工具的api启动所述待测终端内的待测应用。

进一步地,所述操作服务接口包括:应用操作服务接口、操作验证服务接口、获取应用页面服务接口以及获取截图服务接口;ui测试设备通过处理器1001调用存储器1005中存储的ui测试程序还执行以下操作:

基于所述操作服务接口参数的数值,确定对应的操作服务接口;

调用所述操作服务接口,以供通过调用测试工具的api控制所述待测终端对所述待测应用执行相应的ui测试操作。

进一步地,ui测试设备通过处理器1001调用存储器1005中存储的ui测试程序还执行以下操作:

配置用于实现业务流程所对应的ui测试操作集;

其中,ui测试操作集中包含有多个业务操作子集,一个业务操作子集对应实现一个业务流程,每个业务操作子集包含有多个排列组合的操作服务接口参数。

进一步地,ui测试设备通过处理器1001调用存储器1005中存储的ui测试程序还执行以下操作:

基于所述ui测试操作集,依次调用对应的操作服务接口,以控制所述待测终端依次对所述待测应用执行相应业务的ui测试操作。

基于上述ui测试设备的硬件结构,提出本发明ui测试方法的以下各实施例。

参照涂,图2为本发明ui测试方法一实施例的流程示意图。

本实施例中,所述ui测试方法包括以下步骤:

步骤s10,配置初始化服务接口参数与操作服务接口参数;

本实施例中,ui测试设备在开始测试之前,基于测试人员的输入而分别配置初始化服务接口参数与操作服务接口参数。比如ui测试设备提供面向测试人员的参数配置界面,以供测试人员输入相关参数。

本实施例对于初始化服务接口参数以及操作服务接口参数的具体内容不限,具体根据实际测试需要进行设置。

步骤s20,基于所述初始化服务接口参数,调用对应的初始化服务接口,以连接待测终端并启动所述待测终端内的待测应用;

步骤s30,基于所述操作服务接口参数,调用对应的操作服务接口,以控制所述待测终端对所述待测应用执行相应的ui测试操作;

本实施例中,ui测试设备在完成服务接口参数配置后,即开始进行ui测试。ui测试包括两部分:一是待测终端与待测应用的初始化处理;二是对待测应用进行ui测试操作。

(一)待测终端与待测应用的初始化处理

ui测试设备基于配置的初始化服务接口参数,调用对应的初始化服务接口,以连接待测终端并启动待测终端内的待测应用。

本实施例中,ui测试设备通过调用初始化服务接口而实现与待测终端建立连接以及启动待测终端内的待测应用,以便对待测应用进行ui测试操作。

可选的,在一实施例中,初始化服务接口参数包括:设备初始化参数与应用初始化参数;初始化服务接口包括:待测终端初始化服务接口与待测应用初始化服务接口。

ui测试设备具体采用如下方式进行初始化处理:

(1)基于设备初始化参数,调用待测终端初始化服务接口,以供通过调用测试工具的api与待测终端建立wifi连接;

本实施例对于设备初始化参数不限,例如可以包括待测设备的名称、ip地址等。ui测试设备调用待测终端初始化服务接口而产生相应的设备初始化命令,并调用测试工具的api执行与设备初始化命令相对应的操作,进而实现ui测试设备与待测终端之间建立wifi连接。

(2)基于应用初始化参数,调用待测应用初始化服务接口,以供通过调用测试工具的api启动待测终端内的待测应用。

本实施例对于应用初始化参数不限,例如可以包括待测应用的名称、版本号等。ui测试设备调用待测应用初始化服务接口而产生相应的应用初始化命令,并调用测试工具的api执行与应用初始化命令相对应的操作,进而实现启动待测终端内的待测应用。

(二)对待测应用进行ui测试操作

ui测试设备基于配置的操作服务接口参数,调用对应的操作服务接口,以控制待测终端对待测应用执行相应的ui测试操作。

本实施例中,ui测试设备通过调用操作服务接口而控制待测终端对待测应用执行相应的ui测试操作,比如点击某一个按钮而进入新的ui界面。

可选的,在一实施例中,操作服务接口包括:应用操作服务接口、操作验证服务接口、获取应用页面服务接口以及获取截图服务接口。

ui测试设备具体采用如下方式对待测应用进行ui测试:

(1)基于操作服务接口参数的数值,确定对应的操作服务接口;

(2)调用操作服务接口,以供通过调用测试工具的api控制待测终端对待测应用执行相应的ui测试操作。

本实施例中,由于每一个具体操作都对应具体的某个数值,因此,在测试过程中,ui测试设备只需基于操作服务接口参数的数值,即可确定对应的操作服务接口,进而调用对应的操作服务接口而产生相应的ui测试操作命令,并调用测试工具的api执行与ui测试操作命令相对应的操作,进而控制待测终端对待测应用执行相应的ui测试操作。

例如,ui测试设备调用的操作服务接口为应用操作服务接口,则可控制待测终端对待测应用执行应用操作,比如点击、长按、滑动等应用操作;

又例如,ui测试设备调用的操作服务接口为操作验证服务接口,则可控制待测终端对待测应用执行验证服务操作,比如进行账户登录验证操作;

又例如,ui测试设备调用的操作服务接口为获取应用页面服务接口,则可控制待测终端对待测应用执行获取应用页面的操作,比如获取弹出框操作;

又例如,ui测试设备调用的操作服务接口为获取截图服务接口,则可控制待测终端对待测应用执行获取截图的操作,比如在执行完任意的测试操作后,截取当前ui界面,并作为ui测试结果返回给ui测试设备。

本实施例对于测试工具的类型不限,比如appium、seleium等测试工具或服务,其提供有多种用于ui自动化测试的开源api(applicationprogramminginterface,应用程序编程接口)。

步骤s40,接收所述待测终端返回的ui测试结果。

本实施例中,操作服务接口在每一次调用后都会通过待测终端而向ui测试设备返回ui测试结果,比如测试是否响应、执行ui测试操作后的ui界面截图等。ui测试设备接收操作服务接口通过待测终端返回的ui测试结果,以供测试人员了解ui测试情况。

本实施例将ui测试所用到的所有操作参数化,并将各操作封装成可被调用的服务接口,进而避免手动编写自动化测试脚本。整个ui测试过程无需手动编写自动化测试脚本,测试人员只需通过ui测试设备配置相关服务接口参数即可,进而提高了ui自动化测试效率,并降低了管理与测试成本。

进一步可选的,在本发明ui测试方法另一实施例中,将各种初始化操作以及ui测试操作参数化,并将对应的脚本功能代码封装成服务接口,以便通过调用即可实现对应测试功能而无需编写自动化测试脚本。

可选的,所述初始化服务接口封装有初始化操作的脚本功能代码;所述操作服务接口封装有ui测试操作的脚本功能代码。

可选的,初始化操作包括:待测设备连接操作与待测应用启动操作;

ui测试操作包括:点击操作、长按操作、滑动操作、文本输入操作、解锁操作、js脚本操作、启动与关闭应用操作、后退与返回操作、打开与隐藏键盘操作、锁屏操作、上下左右滑动操作、横屏竖屏显示操作。其中,js脚本操作是指在页面执行js代码的操作。

进一步地,为便于点击操作、长按操作、滑动操作、文本输入操作、解锁操作、js脚本操作等涉及到屏幕坐标位置或具体页面控件的ui测试操作能够得以执行,因此,所述操作服务接口还封装有屏幕坐标定位与界面控件定位的脚本功能代码,进而先根据屏幕坐标或者控件xpath(xml路径语言)进行定位,然后再根据具体对应操作参数完成ui测试操作。

进一步可选的,在本发明ui测试方法另一实施例中,ui测试设备还可实现针对具体业务的ui测试,具体实现方式为:

(1)配置用于实现业务流程所对应的ui测试操作集;

(2)基于所述ui测试操作集,依次调用对应的操作服务接口,以控制所述待测终端依次对所述待测应用执行相应业务的ui测试操作。

本实施例中,ui测试操作集中包含有多个业务操作子集,一个业务操作子集对应实现一个业务流程,每个业务操作子集包含有多个排列组合的操作服务接口参数。

本实施例中,在配置好相应的操作服务接口参数后,再对操作服务接口参数进行排列组合,从而可实现配置具有业务意义的ui测试操作集。

例如,配置一个借贷业务流程对应的业务操作子集,该业务操作子集由点击操作、滑动操作、文本输入操作、js脚本操作、后退与返回操作、打开与隐藏键盘操作等对应的操作服务接口参数进行排列组合而形成,ui测试设备基于该业务操作子集而调用对应的操作服务接口,进而调用对应的操作服务接口而产生实现相应业务的ui测试操作命令,并调用测试工具的api执行与ui测试操作命令相对应的操作,进而控制待测终端对待测应用执行相应业务的ui测试操作。

本实施例可配置用于实现业务流程所对应的ui测试操作集,进而有针对性地对目标业务所对应的ui界面进行测试,提升ui测试的灵活性。

本发明还提供一种计算机可读存储介质。

本实施例中,计算机可读存储介质上存储有ui测试程序,所述ui测试程序被处理器执行时实现如是上述任一项实施例中所述的ui测试方法的步骤。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。

上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本发明的保护之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1