应用程序测试方法、装置和计算机设备与流程

文档序号:11230345阅读:406来源:国知局
应用程序测试方法、装置和计算机设备与流程

本发明涉及计算机技术领域,特别是涉及一种应用程序测试方法、装置和计算机设备。



背景技术:

为了保证pos(pointofsale,销售点)应用程序的使用质量,在pos应用程序正式上线前,往往会对pos应用程序的功能进行测试。

目前,对pos应用程序进行测试时,需要测试人员下载pos应用程序到物理pos终端上,并手动的在pos终端上进行测试。然而,为了保证测试的准确性,通常需要人工手动的进行多次重复操作。因此,目前这种需要人工进行多次手动的重复操作,导致测试效率低下。



技术实现要素:

基于此,有必要针对目前需要人工进行多次手动的重复操作,导致测试效率低下的技术问题,提供一种应用程序测试方法、装置和计算机设备。

一种应用程序测试方法,所述方法包括:

发送对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据至终端,使所述终端解析所述仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;

获取通过录制作用于所述仿真pos终端界面以及所述仿真pos应用程序界面上的操作所生成的相应的测试脚本;

发送所述测试脚本至测试执行器并执行。

在其中一个实施例中,在所述发送对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据至终端之前,所述方法还包括:

获取原生pos应用程序的网页数据;

在所述原生pos应用程序的网页数据中,添加相应的pos应用程序仿真接口数据和仿真pos终端界面数据,以得到仿真pos应用程序的网页数据。

在其中一个实施例中,所述获取通过录制作用于所述仿真pos终端界面以及所述仿真pos应用程序界面上的操作所生成的相应的测试脚本,包括:

录制作用于所述仿真pos终端界面和所述仿真pos应用程序界面上的操作;

将录制的所述操作解析成第一脚本片段;

根据所述第一脚本片段,生成相应的测试脚本。

在其中一个实施例中,在所述根据所述第一脚本片段,生成相应的测试脚本之前,所述方法还包括:

检测对预设比对测试项的选择操作;

获取与选择的所述预设比对测试项对应的比对测试对象;

获取与选择的所述预设比对测试项对应的预设脚本片段模板;

根据所述比对测试对象和所述预设脚本片段模板,生成第二脚本片段;所述第二脚本片段用于执行时将所述比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果;

所述根据所述第一脚本片段,生成相应的测试脚本,包括:

根据所述第一脚本片段和所述第二脚本片段,生成相应的测试脚本。

在其中一个实施例中,所述发送所述测试脚本至测试执行器并执行,包括:

当所述测试脚本所对应的目标对象包括物理pos终端时,发送所述测试脚本至连接有物理pos终端的测试执行器,使所述测试执行器执行所述测试脚本,对所述物理pos终端进行测试;

在其中一个实施例中,所述发送所述测试脚本至测试执行器并执行还包括:

当所述测试脚本所对应的目标对象为pos应用程序时,则发送所述测试脚本至运行于仿真环境的测试执行器,使所述运行于仿真环境的测试执行器执行所述测试脚本,对所述仿真pos应用程序进行测试。

在其中一个实施例中,所述方法还包括:

接收回归测试请求;

获取与所述回归测试请求对应的测试用例;

将所述对应的测试用例所对应的测试脚本添加至测试任务队列中;

将所述测试任务队列下发至测试执行器,使所述测试执行器依次执行所述测试任务队列中的测试脚本,以进行回归测试。

一种应用程序测试装置,所述装置包括:

仿真模块,用于发送对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据至终端,使所述终端解析所述仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;

测试脚本获取模块,用于获取通过录制作用于所述仿真pos终端界面以及所述仿真pos应用程序界面上的操作所生成的相应的测试脚本;

测试脚本执行模块,用于发送所述测试脚本至测试执行器并执行。

上述应用程序测试方法和装置,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本下发至测试执行器执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。

一种应用程序测试方法,所述方法包括:

获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据;

解析所述仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;

录制作用于所述仿真pos终端界面和所述仿真pos应用程序界面上的操作;

根据录制的所述操作,生成相应的测试脚本;

将所述测试脚本发送至服务器,使所述服务器在需要执行所述测试脚本时,将所述测试脚本发送至测试执行器,以使所述测试执行器执行所述测试脚本。

一种应用程序测试装置,所述装置包括:

获取模块,用于获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据;

解析模块,用于解析所述仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;

操作录制模块,用于录制作用于所述仿真pos终端界面和所述仿真pos应用程序界面上的操作;

测试脚本生成模块,用于根据录制的所述操作,生成相应的测试脚本;

发送模块,用于将所述测试脚本发送至服务器,使所述服务器在需要执行所述测试脚本时,将所述测试脚本发送至测试执行器,以使所述测试执行器执行所述测试脚本。

一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:

获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据;

解析所述仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;

录制作用于所述仿真pos终端界面和所述仿真pos应用程序界面上的操作;

根据录制的所述操作,生成相应的测试脚本;

将所述测试脚本发送至服务器,使所述服务器在需要执行所述测试脚本时,将所述测试脚本发送至测试执行器,以使所述测试执行器执行所述测试脚本。

上述应用程序测试方法、装置和计算机设备,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本下发至测试执行器并执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。

附图说明

图1为一个实施例中应用程序测试方法的应用环境图;

图2为一个实施例中服务器的内部结构示意图;

图3为一个实施例中终端的内部结构示意图;

图4为一个实施例中应用程序测试方法的流程示意图;

图5为一个实施例中在实现应用程序测试方法时的仿真环境的系统架构图;

图6为一个实施例中测试脚本生成步骤的流程示意图;

图7为一个实施例中第二脚本片段生成步骤的流程示意图;

图8为另一个实施例中应用程序测试方法的流程示意图;

图9为一个实施例中应用程序测试装置的结构框图;

图10为另一个实施例中应用程序测试装置的结构框图;

图11为又一个实施例中应用程序测试装置的结构框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1为一个实施例中应用程序测试方法的应用环境图。参照图1,该应用环境包括服务器110、终端120以及测试执行器130,服务器110、终端120以及测试执行器130两两之间网络连接。测试执行器130是具备运行测试脚本的功能的装置,测试执行器130可以采用硬件来实现,也可以采用软件来实现。终端120是能够解析网页数据的终端,比如终端中可以安装浏览器,也可以安装具有浏览器功能的客户端。其中,终端120可以不同于pos终端。pos终端是可以运行pos应用程序以实现支付功能的终端。需要说明的是,下述各实施例中未作特别限定的终端,皆指终端120。

服务器110可以发送对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据至终端120,使终端120解析仿真pos应用程序的网页数据,生成相应的仿真pos终端界面和仿真pos应用程序界面。服务器110可以获取通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作所生成的相应的测试脚本,并发送测试脚本至测试执行器130,使测试执行器130执行该测试脚本。

图2为一个实施例中服务器的内部结构示意图。参照图2,该服务器包括通过系统总线连接的处理器、非易失性存储介质、内存储器和网络接口。其中,服务器的非易失性存储介质存储有操作系统,还包括一种应用程序测试装置,该应用程序测试装置用于实现一种应用程序测试方法。该处理器用于提供计算和控制能力,支撑整个服务器的运行。服务器中的内存储器为非易失性存储介质中的应用程序测试装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种应用程序测试方法。网络接口用于连接网络进行通信,比如通过网络发送测试脚本等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群。

本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

图3为一个实施例中终端的内部结构示意图。参照图3,该终端包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,终端的非易失性存储介质存储有操作系统,还包括一种应用程序测试装置,该应用程序测试装置用于实现一种应用程序测试方法。该处理器用于提供计算和控制能力,支撑整个终端的运行。终端中的内存储器为非易失性存储介质中的应用程序测试装置的运行提供环境,该内存储器中可储存有计算机可读指令,该计算机可读指令被所述处理器执行时,可使得所述处理器执行一种应用程序测试方法。网络接口用于连接网络进行通信。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,终端的输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该终端可以是个人计算机、移动终端或车载设备,移动终端包括手机、平板电脑、个人数字助理或可穿戴设备等中的至少一种。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

如图4所示,在一个实施例中,提供了一种应用程序测试方法。本实施例主要以该方法应用于上述图2中的服务器来举例说明。参照图4,该应用程序测试方法具体包括如下步骤:

s402,发送对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据至终端,使终端解析仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面。

其中,原生pos应用程序,是用于运行于物理pos终端中实现支付功能的真实应用程序。原生pos应用程序可以为网页格式的pos应用程序。在一个实施例中,原生pos应用程序可以为html5(超文本标记语言第5版)格式的pos应用程序。仿真pos应用程序,是对原生pos应用程序进行仿真处理后得到的、且能够运行于浏览器中用于实现原生pos应用程序的功能的pos应用程序。可以理解,可以对多个原生pos应用程序分别进行仿真处理,得到相应的仿真pos应用程序。

在一个实施例中,在步骤s402之前,还包括:获取原生pos应用程序的网页数据;在原生pos应用程序的网页数据中,添加相应的pos应用程序仿真接口数据和仿真pos终端界面数据,以得到仿真pos应用程序的网页数据。

其中,pos应用程序仿真接口,是对原生pos应用程序的用于实现所具备的功能的接口进行仿真处理,所得到的仿真接口。pos应用程序仿真接口,包括与pos终端进行通信的仿真接口、与交易后台进行通信的仿真接口和用于实现逻辑计算的仿真接口等中的至少一种。

仿真pos终端界面数据,是对物理pos终端进行仿真处理,得到的pos终端界面的仿真数据。其中,仿真pos终端界面,可以包括屏幕仿真区、键盘仿真区、刷卡仿真区和打印机凭条仿真区等,屏幕仿真区可用于显示仿真pos应用程序的界面。仿真pos终端界面也可以是一个在屏幕仿真区中显示键盘仿真区或刷卡仿真区等能够用屏幕触摸功能或显示识别功能替换的结构。比如,仿真pos终端界面中的屏幕仿真区中可以显示用于触摸输入的键盘区。可以理解,不同的原生pos应用程序可以对应不同的仿真pos终端界面。

在一个实施例中,服务器还可以对与仿真pos应用程序进行交易数据交互的交易后台进行仿真处理,得到的仿真交易后台。服务器可以根据仿真交易后台、仿真pos终端的界面、仿真pos应用程序和pos应用仿真接口等构成仿真环境。图5为一个实施例中仿真环境的系统架构图。界面层用于提供仿真应用的界面入口,pos应用程序接口仿真层与仿真交易后台进行交易数据的通信交互。

可以理解,服务器也可以不对交易后台进行仿真处理,仿真pos应用程序的网页数据加载于终端后,可以直接通过仿真接口与真实的交易后台进行交易数据的交互。

s404,获取通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作所生成的相应的测试脚本。

其中,录制操作,是指实时监听并记录操作。录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,是指实时监听并记录作用于仿真pos终端界面以及仿真pos应用程序界面上的操作。

在一个实施例中,用户可以通过终端向服务器请求与该原生pos应用程序或仿真pos应用程序相对应的测试用例,并按照服务器返回该相对应的预设测试用例,在仿真pos终端界面以及仿真pos应用程序界面上进行相应的操作,服务器或终端录制该作用于仿真pos终端界面以及仿真pos应用程序上的、且与返回的预设测试用例相匹配的操作。

服务器可以录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,以生成测试脚本。服务器也可以接收终端所录制的作用于仿真pos终端界面以及仿真pos应用程序界面上的操作数据,解析接收的该录制操作数据,生成测试脚本。

服务器还可以直接接收终端通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作所生成的相应的测试脚本。

s406,发送测试脚本至测试执行器并执行。

其中,测试执行器是具备测试脚本运行功能的装置。在一个实施例中,测试执行器可以是安装了测试代理程序的终端。测试代理程序,用于执行测试脚本,并生成测试结果。可以理解,服务器可以将测试脚本下发至一个或多个测试执行器,并使一个或多个测试执行器执行该被下发的测试脚本。服务器也可以根据测试任务下发请求或根据预设任务下发规则自动地将一个或多个测试脚本添加至任务队列,发送至测试执行器。测试执行器可以运行于真实环境中,也可以运行于仿真环境中。当测试执行器运行于仿真环境中时,测试执行器可以执行测试脚本,向服务器中的仿真pos应用程序发送指令,对仿真pos应用程序进行测试。

上述应用程序测试方法,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本下发至测试执行器执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。此外,通过录制仿真pos终端界面和仿真pos应用程序上的操作,生成测试脚本,实现了免物理pos终端和pos应用程序的免安装,节省了测试成本。

如图6所示,在一个实施例中,步骤s404(简称测试脚本生成步骤)具体包括以下步骤:

s602,录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作。

其中,录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作,可以是录制用户在仿真pos终端界面和仿真pos应用程序界面上进行的所有操作,包括屏幕操作、键盘操作或刷卡操作等。具体地,服务器可以实时监听并记录作用于仿真pos终端界面以及仿真pos应用程序界面上的操作。比如,用户在终端上加载显示的仿真pos终端界面和仿真pos应用程序界面上进行操作,终端可以实时地将作用于仿真pos终端界面和仿真pos应用程序界面上的操作通知服务器,服务器记录该操作。

在一个实施例中,服务器在录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作时,还可以对预设的保留操作不作录制。预设的保留操作,是预设的作用于仿真pos终端界面或仿真pos应用程序界面上的不被录制的操作。

s604,将录制的操作解析成第一脚本片段。

具体地,服务器可以将录制的操作按照测试脚本的语法进行解析,转换成第一脚本片段。

s606,根据第一脚本片段,生成相应的测试脚本。

具体地,服务器可以将用于生成测试脚本的脚本片段,结合对应的脚本头部信息和尾部信息组合,构成相应的完整的测试脚本。其中,服务器可以单独根据第一脚本片段生成相应的测试脚本,也可以根据第一脚本片段,结合根据选择的预设比对测试项和相应的比对测试对象生成的第二脚本片段,生成相应的测试脚本。其中,比对测试项,是用于将比对测试对象与参照标准对象进行比对,以生成比对结果的测试项,比如,检查元素是否存在、比对元素的文字是否正确或比对应用程序界面信息是否正确等比对测试项。比对测试对象,是与参照标准对象进行比对的测试对象,比如应用程序界面、界面中的元素或元素所对应的文字等。

在一个实施例中,服务器还可以接收终端发送的对步骤s606中所生成的测试脚本的编辑操作,根据该编辑操作对测试脚本进行对应的编辑调整,根据编辑调整后的测试脚本得到最终的测试脚本。

上述实施例中,通过录制仿真pos终端界面以及仿真pos应用程序界面上的操作,根据用户操作自动生成相应的测试脚本,使得测试执行器可以根据所自动生成的测试脚本来自动执行测试处理。而不需要人工逐个步骤的进行手动测试操作,提高了测试效率。此外,通过录制仿真pos终端界面和仿真pos应用程序上的操作,生成测试脚本,实现了免物理pos终端和pos应用程序的免安装,节省了测试成本。

如图7所示,在一个实施例中,在根据第一脚本片段,生成相应的测试脚本之前,该方法还包括第二脚本片段生成步骤,具体包括以下步骤:

s702,检测对预设比对测试项的选择操作。

其中,比对测试项,是用于将比对测试对象与参照标准对象进行比对,以生成比对结果的测试项,比如,检查元素是否存在、比对元素的文字是否正确或比对应用程序界面信息是否正确等比对测试项。参照标准对象,是预设的测试通过的测试纪录。参照标准对象用于与对比测试对象进行比对,以判断测试是否通过。可以理解,比对测试项为在用户所做的测试相关操作的基础上,额外添加的一些测试操作项。可以根据实际需要对比对测试项进行添加设置或删除设置。

用户可以通过预设操作,触发对预设比对测试项的选择。在一个实施例中,用户可以在仿真pos终端界面或仿真pos应用程序界面进行触发操作,以生成预设比对测试项的选择菜单栏,用户从该菜单栏中选择预设比对测试项,终端进而将选择的预设比对测试项通知服务器。其中,触发操作包括右键操作或对仿真屏幕区或键盘区的按压或点击操作等。

s704,获取与选择的预设比对测试项对应的比对测试对象。

其中,比对测试对象,是与参照标准对象进行比对的测试对象,包括应用程序界面、界面中的元素或元素所对应的文字等。

可以理解,获取与选择的预设比对测试项对应的比对测试对象的方式有多种,服务器可以获取选择的对应的比对测试对象,也可以按照预设的与比对测试项对应的比对测试对象获取规则,自动获取对应的比对测试对象。比如,比对测试项为“比对元素的文字是否正确”,则服务器可以获取用户所选择的需要检查的元素的文字。又比如,比对测试项为“比对应用程序界面信息”时,对应的比对测试对象即为应用程序当前界面信息,终端可以对应用程序的当前显示界面进行截屏处理得到对应的应用程序当前界面信息,也可以对应用程序的当前显示界面进行图像扫描得到对应的应用程序当前界面信息。

可以理解,上述对预设比对测试项的触发操作或选择操作,以及对比对测试对象的选择操作,则可以被预先设置为保留操作,服务器则可以对这些预设的保留操作不作录制。

s706,获取与选择的预设比对测试项对应的预设脚本片段模板。

具体地,服务器中可以预先设置比对测试项与脚本片段模板之间的对应关系,根据该对应关系,获取与选择的预设比对测试项对应的预设脚本片段模板。其中,预设脚本片段模板中,包括用于发起比对测试对象获取动作和发起比对动作的脚本片段。

s708,根据比对测试对象和预设脚本片段模板,生成第二脚本片段,第二脚本片段用于执行时将比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果。

具体地,服务器可以将所获取的比对测试对象代入所获取的相应的预设脚本片段模板中,以生成第二脚本片段。该第二脚本片段,用于执行时将比对测试对象和相应的标准参照对象进行比对,以得到相应的比对测试结果。

本实施例中,根据第一脚本片段,生成相应的测试脚本包括:根据第一脚本片段和第二脚本片段,生成相应的测试脚本。

在一个实施例中,服务器可以将第一脚本片段和第二脚本片段按照执行逻辑顺序进行组合,生成相应的测试脚本。具体地,服务器可以将第一脚本片段和第二脚本片段,结合对应的脚本头部信息和尾部信息组合,构成相应的完整的测试脚本。

上述实施例中,通过预设比对测试项,根据选择的比对测试项所对应的比对测试对象和预设脚本片段模板生成相应的第二脚本片段,相当于在监听的用户所做的测试相关操作的基础上,额外添加了一些测试操作,通过与用户操作对应的第一脚本片段和由添加的预设比对测试项所对应的第二脚本片段生成相应的测试脚本,使得测试操作更加的全面、完整,从而提高了测试结果的有效性。

在一个实施例中,步骤s406包括:当测试脚本所对应的目标对象包括物理pos终端时,发送测试脚本至连接有物理pos终端的测试执行器,使测试执行器执行测试脚本,对物理pos终端进行测试。

其中,物理pos终端可以通过usb(universalserialbus,通用串行总线)连接测试执行器,也可以通过其他连接方式与测试执行器连接。该连接只要能够满足测试执行器在执行测试脚本时,能够向物理pos终端发送相应指令即可。

测试脚本所对应的目标对象,是被根据测试脚本发起的指令控制的对象。服务器在发送测试脚本至测试执行器时,可以检测测试脚本所对应的目标对象,当测试脚本所对应的目标对象包括物理pos终端时,将测试脚本发送至连接有物理pos终端的测试执行器。测试执行器执行该测试脚本,生成相应的指令,对物理pos终端进行测试。其中,与测试执行器连接的物理pos终端可以为多个。

上述实施例中,通过将测试脚本发送至与物理pos终端连接的测试执行器,使测试执行器自动执行测试脚本,以对物理pos终端进行自动化测试,相较于人工手动的将pos应用程序下载至物理pos终端,并手动进行测试而言,提高了测试效率。此外,与测试执行器连接的物理pos终端可以为多个,从而可以实现同时对多个物理pos终端的测试,进一步提高了测试效率。

在一个实施例中,步骤s406还包括:当测试脚本所对应的目标对象为pos应用程序时,则发送测试脚本至运行于仿真环境的测试执行器,使运行于仿真环境的测试执行器执行测试脚本,对仿真pos应用程序进行测试。

具体地,当测试脚本所对应的目标对象为pos应用程序时,即该测试脚本用于进行应用层面的测试时,服务器可以发送测试脚本至运行于仿真环境的测试执行器。运行于仿真环境的测试执行器则可以执行测试脚本,生成相应的指令,对仿真环境中的仿真pos应用程序进行测试。

上述实施例中,当测试脚本用于进行应用层面的测试时,服务器将测试脚本下发至运行于仿真环境的测试执行器,以对仿真环境中的仿真pos应用程序进行测试。在对pos应用程序测试时实现了免物理pos终端,从而避免了pos应用程序测试对物理pos终端的依赖,节省了测试成本。此外,由测试执行器直接对仿真pos应用程序进行测试,不用人工手动安装pos应用程序以及手动测试,因而提高了测试效率。

在一个实施例中,该方法还包括:接收回归测试请求,获取与回归测试请求对应的测试用例;将对应的测试用例所对应的测试脚本添加至测试任务队列中,将测试任务队列下发至测试执行器,使测试执行器依次执行测试任务队列中的测试脚本,以进行回归测试的步骤。

其中,与回归测试请求对应的测试用例,是指所请求的用于进行回归测试的测试用例。具体地,回归测试请求中可以包括用于回归测试的测试用例标识,服务器根据该测试用例标识获取相应的测试用例。其中,一个测试用例可以对应于一个或多个测试脚本,服务器可以获取与相应的测试用例所对应的测试脚本,并将测试脚本添加至测试任务队列中,测试任务队列中的测试脚本为一个或多个。服务器将测试任务队列下发至测试执行器。测试执行器按照测试任务队列中测试脚本的排序,依次执行测试任务队列中的测试脚本,以进行回归测试。

上述实施例中,通过将与回归测试请求对应的测试脚本添加至测试任务队列中,下发至测试执行器,使测试执行器依次执行测试脚本,实现自动化的回归测试,而不需要人工按照全部或部分测试脚本手动的进行回归测试,提高了回归测试效率。

在一个实施例中,服务器可以根据预设共享规则或用户通过终端发起的测试脚本共享请求将相应的测试脚本设置为共享状态。其中,共享状态的测试脚本,可以被任意具有测试操作权限的用户选择并添加至相应的测试任务中。

其中,预设共享规则,可以是将任意一个或多个原生pos应用程序所对应的测试脚本设置为共享状态的预设规则。用户通过终端发起的测试脚本共享请求,也可以是发起的对任意一个或多个原生pos应用程序所对应的测试脚本进行共享的请求。则服务器可以根据预设共享规则或用户通过终端发起的测试脚本共享请求,将任意一个或多个原生pos应用程序所对应的测试脚本设置为共享状态。

比如,应用1的测试脚本a、b和c为共享状态,应用2的测试脚本d和e为共享状态。测试人员a、b和c都具有测试操作权限,则测试人员a、b和c都可以通过终端对应用1的测试脚本a和b进行选择并添加至相应的测试任务中,服务器执行该测试任务,将测试脚本a和b下发至测试执行器,使测试执行器根据测试脚本a和b对应用1进行测试。再比如,测试人员a、b和c也都可以通过终端对应用2的测试脚本d和e进行选择添加至相应的测试任务,服务器则相应的将测试脚本d和e下发至测试执行器,使测试执行器根据测试脚本d和e对应用2进行测试。

上述实施例中,通过将测试脚本设置为共享状态,使得多个用户都可以执行测试脚本,以提高测试脚本的利用率。同时,录制一次测试脚本,即可实现共用,也避免了不同用户对测试脚本的重复录制造成的时间成本的浪费,从而提高了测试效率。

在一个实施例中,该方法还包括:获取测试执行器上报的、且根据执行测试脚本所生成的测试结果;根据该测试结果生成相应的测试报告。

具体地,测试执行器执行服务器发送的测试脚本后,可以生成相应的测试结果,并将测试结果上报至服务器。服务器可以对该测试结果进行分析,生成相应的测试报告。上述实施例中,通过测试结果自动生成相应的测试报告,使得当测试存在问题时,可以更加及时的获知测试问题,避免了人工对测试结果进行大量分析得到测试问题所造成的时间成本的浪费。

如图8所示,在一个实施例中,提供了一种应用程序测试方法,本实施例主要以该方法应用于上述图3中的终端来举例说明。参照图8,该应用程序测试方法具体包括如下步骤:

s802,获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据。

具体地,终端接收服务器发送的对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据。

s804,解析仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面。

s806,录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作。

在一个实施例中,用户可以通过终端向服务器请求与该原生pos应用程序或仿真pos应用程序相对应的预设测试用例,并按照服务器返回该相对应的测试用例,在仿真pos终端界面以及仿真pos应用程序界面上进行相应的操作,终端录制该作用于仿真pos终端界面以及仿真pos应用程序上的、且与返回的预设测试用例相匹配的操作。

s808,根据录制的操作,生成相应的测试脚本。

其中,终端可以将录制的操作按照测试脚本的语法进行解析,以生成相应的测试脚本。

在一个实施例中,终端还可以接收对解析生成的测试脚本进行的编辑操作指令,并响应于该编辑操作指令,对解析解析生成的测试脚本进行对应的编辑调整,根据编辑调整后的测试脚本,得到最终的测试脚本。

s810,将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本发送至测试执行器,以使测试执行器执行测试脚本。

上述应用程序测试方法,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本下发至测试执行器并执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。

此外,通过终端根据解析仿真pos应用程序的网页数据,加载显示相应的仿真pos终端界面和仿真pos应用程序界面,并录制作用于上述界面上的操作,生成测试脚本,实现了免物理pos终端和pos应用程序的免安装,节省了测试成本。

在一个实施例中,步骤s808包括:将录制的操作解析成第一脚本片段,根据第一脚本片段,生成相应的测试脚本。

具体地,终端可以将录制的操作按照测试脚本的语法进行解析,转换成第一脚本片段。终端可以将用于生成测试脚本的脚本片段,结合对应的脚本头部信息和尾部信息组合,构成相应的完整的测试脚本。

其中,终端可以单独根据第一脚本片段生成相应的测试脚本,也可以根据第一脚本片段,结合根据选择的预设比对测试项和相应的比对测试对象生成的第二脚本片段,生成相应的测试脚本。其中,比对测试项,是用于将比对测试对象与参照标准对象进行比对,以生成比对结果的测试项,比如,检查元素是否存在、比对元素的文字是否正确或比对应用程序界面信息是否正确等比对测试项。比对测试对象,是与参照标准对象进行比对的测试对象,比如应用程序界面、界面中的元素或元素所对应的文字等。

上述实施例中,通过将录制仿真pos终端界面以及仿真pos应用程序界面上的操作解析成脚本片段,根据脚本片段生成相应的测试脚本。即实现了测试脚本的自动化生成,使得测试执行器可以根据所自动生成的测试脚本来自动执行测试处理。而不需要人工逐个步骤的进行手动测试操作,提高了测试效率。

在一个实施例中,在根据第一脚本片段,生成相应的测试脚本之前,该方法还包括以下步骤:检测对预设比对测试项的选择操作;获取与选择的预设比对测试项对应的比对测试对象;获取与选择的预设比对测试项对应的预设脚本片段模板;根据比对测试对象和预设脚本片段模板,生成第二脚本片段,第二脚本片段用于执行时将比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果。本实施例中,根据第一脚本片段,生成相应的测试脚本,包括:根据第一脚本片段和第二脚本片段,生成相应的测试脚本。

用户可以通过预设操作,触发对预设比对测试项的选择。在一个实施例中,用户可以在仿真pos终端界面或仿真pos应用程序界面进行触发操作,以生成预设比对测试项的选择菜单栏,用户从该菜单栏中选择预设比对测试项,终端进而获取选择的预设比对测试项。其中,触发操作包括右键操作或对仿真屏幕区或键盘区的按压或点击操作等。

可以理解,获取与选择的预设比对测试项对应的比对测试对象的方式有多种,终端可以获取选择的对应的比对测试对象,也可以按照预设的与比对测试项对应的比对测试对象获取规则,自动获取对应的比对测试对象。比如,比对测试项为“比对元素的文字是否正确”,则终端可以获取用户所选择的需要检查的元素的文字。又比如,比对测试项为“比对应用程序界面信息”时,对应的比对测试对象即为应用程序当前界面信息,终端可以对应用程序的当前显示界面进行截屏处理得到对应的应用程序当前界面信息,也可以对应用程序的当前显示界面进行图像扫描得到对应的应用程序当前界面信息。

可以理解,上述对预设比对测试项的触发操作或选择操作,以及对比对测试对象的选择操作,则可以被预先设置为保留操作,终端则可以对这些预设的保留操作不作录制。

终端中可以预先设置比对测试项与脚本片段模板之间的对应关系,根据该对应关系,获取与选择的预设比对测试项对应的预设脚本片段模板。其中,预设脚本片段模板中,包括用于发起比对测试对象获取动作和发起比对动作的脚本片段。

终端可以将所获取的比对测试对象代入所获取的相应的预设脚本片段模板中,以生成第二脚本片段。该第二脚本片段,用于执行时将比对测试对象和相应的标准参照对象进行比对,以得到相应的比对测试结果。

在一个实施例中,终端可以将第一脚本片段和第二脚本片段按照执行逻辑顺序进行组合,生成相应的测试脚本。具体地,终端可以将第一脚本片段和第二脚本片段,结合对应的脚本头部信息和尾部信息组合,构成相应的完整的测试脚本。

上述实施例中,通过预设比对测试项,根据选择的比对测试项所对应的比对测试对象和预设脚本片段模板生成相应的第二脚本片段,相当于在监听的用户所做的测试相关操作的基础上,额外添加了一些测试操作,通过与用户操作对应的第一脚本片段和由添加的预设比对测试项所对应的第二脚本片段生成相应的测试脚本,使得测试操作更加的全面、完整,从而提高了测试结果的有效性。

如图9所示,在一个实施例中,提供了一种应用程序测试装置900,该装置包括:仿真模块902、测试脚本获取模块904以及测试脚本执行模块906,其中:

仿真模块902,用于发送对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据至终端,使终端解析仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面。

测试脚本获取模块904,用于获取通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作所生成的相应的测试脚本。

测试脚本执行模块906,用于发送测试脚本至测试执行器并执行。

上述应用程序测试装置,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本下发至测试执行器执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。

在一个实施例中,仿真模块902还用于获取原生pos应用程序的网页数据;在原生pos应用程序的网页数据中,添加相应的pos应用程序仿真接口数据和仿真pos终端界面数据,以得到仿真pos应用程序的网页数据。

在一个实施例中,测试脚本获取模块904还用于录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作;将录制的操作解析成第一脚本片段;根据第一脚本片段,生成相应的测试脚本。

在一个实施例中,测试脚本获取模块904还用于检测对预设比对测试项的选择操作;获取与选择的预设比对测试项对应的比对测试对象;获取与选择的预设比对测试项对应的预设脚本片段模板;根据比对测试对象和预设脚本片段模板,生成第二脚本片段;第二脚本片段用于执行时将比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果;根据第一脚本片段和第二脚本片段,生成相应的测试脚本。

在一个实施例中,测试脚本执行模块906还用于当测试脚本所对应的目标对象包括物理pos终端时,发送测试脚本至连接有物理pos终端的测试执行器,使测试执行器执行测试脚本,对物理pos终端进行测试。

在一个实施例中,测试脚本执行模块906还用于当测试脚本所对应的目标对象为pos应用程序时,则发送测试脚本至运行于仿真环境的测试执行器,使运行于仿真环境的测试执行器执行测试脚本,对仿真pos应用程序进行测试。

如图10所示,在一个实施例中,该装置还包括:

回归测试模块908,用于接收回归测试请求;获取与回归测试请求对应的测试用例;将对应的测试用例所对应的测试脚本添加至测试任务队列中并通知测试脚本执行模块906。

测试脚本执行模块906还用于将测试任务队列下发至测试执行器,使测试执行器依次执行测试任务队列中的测试脚本,以进行回归测试。

如图11所示,在一个实施例中,提供了一种应用程序测试装置1100,该装置包括:获取模块1102、解析模块1104、操作录制模块1106、测试脚本生成模块1108以及发送模块1110,其中:

获取模块1102,用于获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据。

解析模块1104,用于解析仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面。

操作录制模块1106,用于录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作。

测试脚本生成模块1108,用于根据录制的操作,生成相应的测试脚本。

发送模块1110,用于将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本发送至测试执行器,以使测试执行器执行测试脚本。

在一个实施例中,测试脚本生成模块1108还用于将录制的操作解析成第一脚本片段,根据第一脚本片段,生成相应的测试脚本。

在一个实施例中,测试脚本生成模块1108还用于检测对预设比对测试项的选择操作;获取与选择的预设比对测试项对应的比对测试对象;获取与选择的预设比对测试项对应的预设脚本片段模板;根据比对测试对象和预设脚本片段模板,生成第二脚本片段;第二脚本片段用于执行时将比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果;根据第一脚本片段和第二脚本片段,生成相应的测试脚本。

在一个实施例中,提供了一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行以下步骤:获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据;解析仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作;根据录制的操作,生成相应的测试脚本;将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本发送至测试执行器,以使测试执行器执行测试脚本。

上述计算机设备,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本下发至测试执行器并执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。

在一个实施例中,处理器所执行的根据录制的操作,生成相应的测试脚本,包括:将录制的操作解析成第一脚本片段,根据第一脚本片段,生成相应的测试脚本。

在一个实施例中,在根据第一脚本片段,生成相应的测试脚本之前,计算机可读指令还使得处理器执行以下步骤:检测对预设比对测试项的选择操作;获取与选择的预设比对测试项对应的比对测试对象;获取与选择的预设比对测试项对应的预设脚本片段模板;根据比对测试对象和预设脚本片段模板,生成第二脚本片段;第二脚本片段用于执行时将比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果。处理器所执行的根据第一脚本片段,生成相应的测试脚本,包括:根据第一脚本片段和第二脚本片段,生成相应的测试脚本。

在一个实施例中,提供了一个或多个存储有计算机可读指令的非易失性可读存储介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:获取对原生pos应用程序进行仿真处理得到的仿真pos应用程序的网页数据;解析仿真pos应用程序的网页数据,以加载显示相应的仿真pos终端界面和仿真pos应用程序界面;录制作用于仿真pos终端界面和仿真pos应用程序界面上的操作;根据录制的操作,生成相应的测试脚本;将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本发送至测试执行器,以使测试执行器执行测试脚本。

上述非易失性可读存储介质,通过录制作用于仿真pos终端界面以及仿真pos应用程序界面上的操作,生成相应的测试脚本,将测试脚本发送至服务器,使服务器在需要执行测试脚本时,将测试脚本下发至测试执行器并执行,当需要多次执行测试脚本时,就可以根据测试执行器自动的执行测试脚本,而不用人工逐个步骤的进行手动的重复操作,提高了测试效率。

在一个实施例中,处理器所执行的根据录制的操作,生成相应的测试脚本,包括:将录制的操作解析成第一脚本片段,根据第一脚本片段,生成相应的测试脚本。

在一个实施例中,在根据第一脚本片段,生成相应的测试脚本之前,计算机可读指令还使得处理器执行以下步骤:检测对预设比对测试项的选择操作;获取与选择的预设比对测试项对应的比对测试对象;获取与选择的预设比对测试项对应的预设脚本片段模板;根据比对测试对象和预设脚本片段模板,生成第二脚本片段;第二脚本片段用于执行时将比对测试对象与相应的标准参照对象进行比对得到相应的比对测试结果。处理器所执行的根据第一脚本片段,生成相应的测试脚本,包括:根据第一脚本片段和第二脚本片段,生成相应的测试脚本。

需要说明的是,本申请各实施例中所用的“第一”和“第二”仅用于区分,并不用作从属、大小或先后等方面的限定。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)等非易失性存储介质,或随机存储记忆体(randomaccessmemory,ram)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限定。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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