应用的测试方法、终端设备及计算机可读存储介质与流程

文档序号:15216111发布日期:2018-08-21 16:52阅读:177来源:国知局

本发明属于应用测试技术领域,尤其涉及一种应用的测试方法、终端设备及计算机可读存储介质。



背景技术:

随着手机、电脑等终端的普及程度越来越高,适用于终端的应用程序也越来越多。

现有技术中在对应用进行测试时,将配置好的测试脚本文件配置到远程测试平台、移动测试平台等平台中,通过执行该测试脚本文件进而实现对应用的测试。由于不同的测试平台所采用的测试脚本文件框架不同,使得应用在进行测试过程中,无法在不同的测试平台上使用同一个脚本文件,需要针对不同的测试平台配置不同的脚本文件,增加了开发成本。



技术实现要素:

有鉴于此,本发明实施例提供了一种应用的测试方法、终端设备及计算机可读存储介质,可以在同时对多个终端进行操作测试时,提高测试效率。

本发明实施例的第一方面提供了一种应用的测试方法,包括:

载入测试脚本文件;

获取所述测试脚本文件的类型信息;

根据所述类型信息查找脚本文件转换工具的标识;

根据所述脚本文件转换工具的标识,调用脚本文件转换工具对所述测试脚本文件进行转换,得到目标脚本文件,所述目标脚本文件适用于当前测试平台;

执行所述目标脚本文件,以对应用进行测试。

本发明实施例的第二方面提供了一种应用的测试装置,包括用于执行第一方面所述方法的单元。

本发明实施例的第三方面提供了一种终端设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。

本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机程序被处理器执行时实现上述第一方案所述方法的步骤。

本发明实施例通过获取载入的测试脚本文件的类型信息,根据类型信息查找脚本文件转换工具的标识,再根据脚本文件转换工具的标识,调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件,目标脚本文件适用于当前测试平台,执行目标脚本文件,以对应用进行测试,使得在不同的测试平台上对应用进行测试时,无需因为测试平台的不同而重新配置测试脚本,节约了测试脚本的开发成本。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种应用的测试方法的实现流程示意图;

图2是本发明另一实施例提供的一种应用的测试方法的实现流程示意图;

图3是本发明另一实施例提供的一种应用的测试方法步骤s25的具体实现流程图;

图4是本发明另一实施例提供的一种应用的测试方法步骤s27的具体实现流程图;

图5是本发明实施例提供的一种应用的测试装置的结构示意图;

图6是本发明实施例提供的终端设备的示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

参见图1,是本发明实施例提供一种应用的测试方法的实现流程图,如图1所示应用的测试方法可包括:

s11:载入测试脚本文件。

在步骤s11中,测试脚本文件用于对应用进行操作测试,描述了在对应用进行测试过程中的操作方式和操作目标,其中,操作方式包括:点击、滑动、长按或者侧边拖动等;操作目标包括:虚拟按键、图标、窗口或者网页链接等。

在本实施例中,测试脚本文件是预先配置好的脚本文件,服务器载入该测试脚本文件可以是在确定了待测试应用后,根据待测试应用的操作测试需求,从预设的数据库中选择得到。

至于何时载入测试脚本文件,可以包括但不仅限于以下场景。

根据待测试应用的属性信息,载入测试脚本文件。

以待测试应用为游戏应用a为例,应用a的属性信息用于描述在该应用a的任一界面中,需要用户进行操作的动作内容。

例如,在该应用a的任一界面中,均可以通过虚拟键盘为用户提供文字输入,用户在虚拟键盘上进行点击操作和滑动操作,进行文字的输入。在选择测试脚本文件进行载入时,则选择用于对该应用a的虚拟键盘进行点击操作和滑动操作进行测试的测试脚本文件。

s12:获取所述测试脚本文件的类型信息。

在步骤s12中,类型信息用于描述测试脚本文件的控制目标信息或测试流程信息,其中,控制目标信息是指测试脚本文件的编程方式,例如,面向对象或面向过程;测试流程是指执行测试脚本文件过程中生成进程列队的顺序。

当测试平台执行测试脚本文件的过程中会生成并行的多个主进程,每个主进程在运行过程中,还有可能生成子进程。进程列队指的是在执行测试脚本文件过程中生成的所有主进程的集合,且在进程列队中,进程之间的排列顺序与进程的生成顺序有关。

在本实施例中,测试脚本文件的类型信息与可在测试平台上被执行的目标脚本文件的类型信息不同。

测试脚本文件的类型信息可以被携带于测试脚本文件的属性信息中,或者是在执行该测试脚本文件时,通过分析执行测试脚本文件过程中的进程,进而确定该测试脚本文件的类型信息。

例如,在载入测试脚本文件后,通过对该测试脚本文件的属性信息进行读取,进而识别到该测试脚本文件的类型信息。

再例如,在载入测试脚本文件后,通过对该测试脚本文件进行编译,分析该测试脚本文件在执行过程中可能会产生的进程队列,并对该进程队列进行分析,进而确定该测试脚本文件的类型信息。

需要说明的是,编译过程中把测试脚本文件给解析成虚拟机可以处理的指令,通过调用编译函数对指令进行执行,进而分析出该测试脚本文件在执行过程中可能会产生的进程队列。

s13:根据所述类型信息查找脚本文件转换工具的标识。

在步骤s13中,脚本文件转换工具的标识用于区分不同的脚本文件转换工具。

在本实施例中,脚本文件转换工具可以是根据不同的测试脚本文件的类型信息,分别配置的汇编语言转换工具。

由于测试脚本文件是基于测试平台的测试逻辑特征所配置的,因此,在不同的测试平台上运行同一测试脚本文件时,容易出现测试进程错乱或者无法进行测试的现象。为了避免上述现象,通过比较不同测试平台之间的差异性,可以获知不同测试平台上执行的应用测试脚本之间的差异性,根据该差异以对不同测试平台之间测试脚本文件进行转换为目的,配置脚本文件转换工具,并在查找到脚本文件转换工具的标识后,通过调用标识所指向的脚本文件转换工具对测试脚本文件进行转换,能够免去对测试脚本文件的重复开发,降低了应用测试的成本。

需要说明的是,当用户通过当前测试平台对应用进行测试时,在当前测试平台中载入测试脚本文件后,由当前测试平台通过调用脚本文件转换工具对测试脚本文件进行转换。在调用脚本文件转换工具的过程中,首先获取测试脚本文件的类型信息,再根据该类型信息查找脚本文件转换工具的标识,由于该标识用于区分不同的脚本文件转换工具,因此根据不同的类型信息可以确定不同的脚本文件转换工具的标识,进而根据不同的脚本文件转换工具的标识调用不同的脚本文件转换工具对测试脚本文件进行转换。

作为本实施例一种可能的实现方式,根据测试脚本文件的类型信息和脚本文件转换工具的标识对应生成列表,根据类型信息查找脚本文件转换工具的标识,具体是,根据类型信息从列表中查找脚本文件转换工具的标识。

s14:根据所述脚本文件转换工具的标识,调用脚本文件转换工具对所述测试脚本文件进行转换,得到目标脚本文件。

在步骤s14中,目标脚本文件适用于当前测试平台。调用脚本文件转换工具对测试脚本进行转换,是对测试脚本文件进行内容分析和内容转换,进而得到能够被用于其他测试平台所执行的目标脚本文件。

在实际应用中,当用户需要对应用进行测试时,可以通过在服务器上自行搭建应用测试环境,编辑测试脚本文件,并将该测试脚本文件载入到应用测试平台中,同时也将待测试的应用上传到该应用测试平台,由应用测试平台对测试脚本文件进行执行进而对待测的应用进行测试。

对应用进行操作测试时,可以通过搭建界面逻辑测试平台或者压力测试平台分别对应用进行操作测试,例如,appium或monkey。

需要说明的是,通过界面逻辑测试平台与压力测试平台分别对应用进行测试时,均是模拟用户在应用的界面中进行一系列操作,并记录该应用对操作的响应结果,通过分析相应结果完成对应用的操作测试。由于界面逻辑测试平台与压力测试平台所基于的开发框架不同,所以两个平台所采用的测试脚本文件无法共用,因此需要调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件。

例如,针对界面逻辑测试平台预先配置有测试脚本文件b,当需要对应用进行压力测试时,则需要配置能够在压力测试平台中被执行的测试脚本文件c,通过调用脚本文件转换工具对测试脚本文件b进行转换,进而得到目标脚本文件c,其中,目标脚本文件c用于被压力测试平台执行,以对应用进行压力测试。

可以理解的是,在调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件的过程中,并不是调用脚本文件转换工具篡改测试脚本文件的执行内容,而是根据测试脚本文件的测试内容生成另外一个目标脚本文件,该目标脚本文件能够被执行于其他测试平台上。

s15:执行所述目标脚本文件,以对应用进行测试。

在步骤s15中,目标脚本文件是由脚本文件转换工具对测试脚本文件进行转换所得到。执行目标脚本文件的测试平台,与执行测试脚本文件的测试平台不是同一测试平台。

在本实施例中,目标脚本文件中包括了测试脚本文件中的所有测试事件。应用可以包括能够在终端上运行的所有类型的应用,例如,原生应用、网页应用或者混合应用,其中,原生应用指的是专门为终端的操作系统开发的基础应用,可以直接调用终端的硬件设备;网页应用是基于全球广域网web(worldwideweb,web),根据应用需求配置超级文本文件标记语言文件,并将该超级文本文件标记语言文件配置到浏览器的框架中得到的应用;混合应用是基于原生应用的框架,在原生应用的框架中嵌入配置好的超级文本文件标记语言文件所得到。

可以理解的是,执行目标脚本文件对应用进行测试的过程中,应用可以是在加载目标脚本文件的同时,通过将该应用的安装包上传至服务器中,由测试平台模拟终端环境对该安装包进行加载,并完成安装。

以上可以看出,本发明实施例通过获取载入的测试脚本文件的类型信息,根据类型信息查找脚本文件转换工具的标识,再根据脚本文件转换工具的标识,调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件,目标脚本文件适用于当前测试平台执行目标脚本文件,以对应用进行测试,使得在不同的测试平台上对应用进行测试时,无需因为测试平台的不同而重新配置测试脚本,节约了测试脚本的开发成本。

参见图2,图2是本发明另一实施例提供一种应用的测试方法的示意流程图。本实施例是在上一实施例的基础上,对载入测试脚本文件的步骤之前的操作步骤做进一步地限定。如图2所示,本发明另一实施例提供的应用的测试方法可包括:

s21:获取各类所述测试脚本的控制目标信息或测试流程信息。

s22:根据所述控制目标信息或所述测试流程信息,分别为各类所述脚本文件转换工具分配所述标识。

s23:将每类所述脚本文件的所述类型信息,与所述标识对应存储至目标数据库中。

在步骤s23中,目标数据库中存储的数据用于描述每类脚本文件的类型信息与标识之间的关系。

在本实施例中,标识用于区分脚本文件转换工具,在目标数据库中,每类脚本文件的类型信息分别对应有相应的脚本文件转换工具的标识。

s24:载入测试脚本文件。

s25:获取所述测试脚本文件的类型信息。

在步骤s25中,类型信息与可在测试平台上被执行的目标脚本文件的类型信息不同。

在本实施例中,测试脚本文件的类型信息用于描述测试脚本文件的控制目标信息或测试流程信息,其中,控制目标信息是指测试脚本文件的编程方式,例如,面向对象或面向过程;测试流程是指执行测试脚本文件过程中生成进程列队的顺序。

作为本实施例一种可能实现的方式,在上述各个实施例的基础上,对获取测试脚本文件的类型信息的方式做进一步地限定。如图3所示,步骤s25具体包括:

s251:对所述测试脚本文件进行解析,得到测试用例数据和业务流程信息。

在步骤s251中,测试用例数据为测试脚本文件中,用于测试应用的某个功能或模块的子脚本。

需要说明的是,测试用例数据可以为一组或多组,业务流程信息可以为一组或多组。在实际应用中,可以在测试脚本文件中将测试的逻辑性能进行配置,使得一份测试脚本文件可以对多个测试用例进行测试。

s252:依据所述业务流程信息,对所述测试用例数据进行测试,得到测试进程列队。

在步骤s252中,测试进程列队用于反应依据业务流程信息,对测试用例数据进行测试过程中生成的全部进程。

在本实施例中,依据业务流程信息对测试用例数据进行测试时,通过对测试过程中生成的进程信息进行录制,并通过进程复现或者进程迁移等方式将录制得到的进程信息进行有序地排列,得到测试进程列队。

例如,依据业务流程信息对测试用例数据进行测试过程中,生成进程x、进程y以及进程z,通过进程复现得到测试进程列队,该测试进程列队中包括进程x、进程y以及进程z。

s253:解析所述测试进程列队的头文件,得到所述类型信息。

在步骤s253中,进程列队的头文件用于描述进程列队的属性,进程列队的头文件中描述的进程列队的属性包括:进程的个数、进程的类别以及进程列队中各个进程文件的名称。通过解析测试进程列队的头文件,得到进程列对中各个进程的内容描述、生成顺序和执行顺序。

在本实施例中,类型信息包括用于描述测试脚本文件的控制目标信息或测试流程信息,其中,控制目标信息是指测试脚本文件的编程方式,例如,面向对象或面向过程;测试流程是指执行测试脚本文件过程中生成进程列队的顺序。

通过解析测试进程列队的头文件后,得到各个进程的内容描述、生成顺序和执行顺序,结合各个进程的内容描述确定控制目标信息。根据对进程的生成顺序和执行顺序进行分析,确定测试流程。

例如,结合各个进程的内容描述,如果内容描述针对的是测试用例的测试过程,则确定控制目标信息为面向过程。

再例如,结合各个进程的内容描述,如果内容描述针对的是测试用例的测试对象,则确定控制目信息为面向对象。

可以理解的是,对各个进程的内容描述进行解析时,可以通过查找进程名称列表,进而根据进程名称确定该进程的内容描述。

s26:根据所述类型信息查找脚本文件转换工具的标识。

结合步骤s23,根据类型信息查找脚本文件转换工具的标识时,可以从目标数据库中查找与类型信息对应的脚本文件转换工具的标识。

s27:根据所述脚本文件转换工具的标识,调用脚本文件转换工具对所述测试脚本文件进行转换,得到目标脚本文件,所述目标脚本文件适用于当前测试平台。

作为本实施例一种可能实现的方式,在上述个实施例的基础上,对所述测试脚本文件进行转换的方式做进一步地限定。如图4所示,步骤s27具体包括:

s271:从所述测试脚本文件中提取测试原语。

s272:根据所述测试原语生成有序的控制指令队列。

s273:对所述控制指令队列进行转换,得到目标测试语句。

s274:将所述目标测试语句按照与所述控制指令队列一致的时序,配置到预设的脚本框架中,得到所述目标脚本文件。

测试原语为测试平台在执行测试脚本文件过程中,对应用进行测试过程控制的语句,用于反映在对应用进行测试过程中的控制动作。

在实际应用中,从测试脚本文件中提取的测试原语可以包括多个条,且每条测试原语至少对应一条控制指令。

根据测试原语生成有序的控制指令队列,可以根据测试原语,在预先设置好的编解码列表中查找相应的编解码,通过对测试原语进行编码转换,得到有序的控制指令队列,通过将该有序的控制指令队列进行区块封装,得到目标测试语句。

需要说明的是,在对测试原语进行转换前,需要针对不同的测试原语配置相对应的编解码,并建立测试原语与相应的编解码的对应关系,即每个测试平台对应于一个测试原语与相应编解码的对应关系;即在测试脚本在当前测试平台中运行时,对该测试脚本中的测试原语进行编码的编解码是根据该当前测试平台对应的测试原语与编解码的对应关系确定出的,从而使得对测试脚本中的测试原语进行编码得到的有序的控制指令队列更符合当前测试平台,运行该有序的控制指令队列能够更加准确的利用当前测试平台对应用进行测试。

可以理解的是,在调用脚本文件转换工具对测试脚本文件进行装换时,可以通过对测试脚本文件进行静态分析,得到相应的测试原语,其中,对测试脚本文件进行静态分析,是指在不执行测试脚本文件的条件下下,通过对测试脚本文件的内容进行扫描操作。

根据不同的测试平台预先配置好脚本框架,将目标测试语句按照与控制指令队列一致的时序,配置到预设的脚本框架中,进而得到目标脚本文件。

s28:执行所述目标脚本文件,以对应用进行测试。

作为本实施例一种可能实现的方式,在上述各个实施例的基础上,对执行所述目标脚本文件的方式做进一步地限定。如图5所示,步骤s28具体包括:

s281:根据所述目标脚本文件,在所述应用的任一操作界面中随机触发模拟操作指令。

s282:记录所述应用根据所述模拟操作指令的响应信息。

在本实施例中,执行目标脚本文件对应用进行测试的过程,是在应用的任一操作界面中随机触发模拟操作测试指令,即模拟目标脚本文件中的触发事件,在应用的任一操作界面中模拟操作测试,应用在运行过程中当检测到模拟操作测试指令时,就会根据该指令进行响应或者不响应,通过记录应用的响应信息,并将测试过程中的响应信息作为应用测试的结果。

以上可以看出,本发明实施例通过获取载入的测试脚本文件的类型信息,根据类型信息查找脚本文件转换工具的标识,再根据脚本文件转换工具的标识,调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件,目标脚本文件适用于当前测试平台,执行目标脚本文件,以对应用进行测试,使得在不同的测试平台上对应用进行测试时,无需因为测试平台的不同而重新配置测试脚本,节约了测试脚本的开发成本。

通过获取各类测试脚本的控制目标信息或测试流程信息,再根据控制目标信息或测试流程信息,分别为各类脚本文件转换工具分配标识,并将每类脚本文件的类型信息,与标识对应存储至目标数据库中,使得在根据类型信息查找脚本文件转换工具的标识时,可以直接从目标数据库中查找得到,提高了脚本文件转换工具的调用效率。

参见图5,图5是本发明实施例提供的一种应用的测试装置的示意性框图。本实施例的一种应用的测试装置30包括的各单元用于执行图2对应的实施例中的各步骤,具体请参阅图2及图2对应的实施例中的相关描述,此处不赘述。本实施例的一种应用的测试装置30包括:第一获取单元31、分配单元32、存储单元33、载入单元34、第二获取单元35、查找单元36、调用单元37以及执行单元38。具体地:

第一获取单元31,用于获取各类所述测试脚本的控制目标信息或测试流程信息。

分配单元32,用于根据所述控制目标信息或所述测试流程信息,分别为各类所述脚本文件转换工具分配所述标识。

存储单元33,用于将每类所述脚本文件的所述类型信息,与所述标识对应存储至目标数据库中。

载入单元34,用于载入测试脚本文件。

第二获取单元35,用于获取所述测试脚本文件的类型信息。

进一步地,作为本实施例一种可能实现的方式,第二获取单元35具体用于,对所述测试脚本文件进行解析,得到测试用例数据和业务流程信息;依据所述业务流程信息,对所述测试用例数据进行测试,得到测试进程列队;解析所述测试进程列队的头文件,得到所述类型信息;所述进程列队的头文件用于描述进程列队的属性。

查找单元36,用于根据所述类型信息查找脚本文件转换工具的标识。

调用单元37,用于根据所述脚本文件转换工具的标识,调用脚本文件转换工具对所述测试脚本文件进行转换,得到目标脚本文件,所述目标脚本文件适用于当前测试平台。

进一步地,作为本实施例一种可能实现的方式,调用单元37具体用于,从所述测试脚本文件中提取测试原语;根据所述测试原语生成有序的控制指令队列;对所述控制指令队列进行转换,得到目标测试语句;将所述目标测试语句按照与所述控制指令队列一致的时序,配置到预设的脚本框架中,得到所述目标脚本文件。

执行单元38,用于执行所述目标脚本文件,以对应用进行测试。

进一步地,作为本实施例一种可能实现的方式,执行单元38具体用于,根据所述目标脚本文件,在所述应用的任一操作界面中随机触发模拟操作指令;记录所述应用根据所述模拟操作指令的响应信息。

以上可以看出,本发明实施例通过获取载入的测试脚本文件的类型信息,根据类型信息查找脚本文件转换工具的标识,再根据脚本文件转换工具的标识,调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件,目标脚本文件适用于当前测试平台执行目标脚本文件,以对应用进行测试,使得在不同的测试平台上对应用进行测试时,无需因为测试平台的不同而重新配置测试脚本,节约了测试脚本的开发成本。

通过获取各类测试脚本的控制目标信息或测试流程信息,再根据控制目标信息或测试流程信息,分别为各类脚本文件转换工具分配标识,并将每类脚本文件的类型信息,与标识对应存储至目标数据库中,使得在根据类型信息查找脚本文件转换工具的标识时,可以直接从目标数据库中查找得到,提高了脚本文件转换工具的调用效率。

参见图6,是本发明另一实施例提供的一种终端示意框图。如图所示的本实施例中的终端设备400可以包括:一个或多个处理器401;一个或多个输入设备402,一个或多个输出设备403和存储器404。上述处理器401、输入设备402、输出设备403和存储器404通过总线405连接。存储器402用于存储,计算机程序包括指令,处理器401通过调用存储器402存储的计算机程序执行如下操作:

处理器401用于:载入测试脚本文件。

处理器401用于:获取所述测试脚本文件的类型信息。

处理器401用于:根据所述类型信息查找脚本文件转换工具的标识。

处理器401用于:根据所述脚本文件转换工具的标识,调用脚本文件转换工具对所述测试脚本文件进行转换,得到目标脚本文件,所述目标脚本文件适用于当前测试平台。

处理器401用于:执行所述目标脚本文件,以对应用进行测试。

处理器401还用于:获取各类所述测试脚本的控制目标信息或测试流程信息。

处理器401还用于:根据所述控制目标信息或所述测试流程信息,分别为各类所述脚本文件转换工具分配所述标识。

处理器401还用于:将每类所述脚本文件的所述类型信息,与所述标识对应存储至目标数据库中。

处理器401具体用于:对所述测试脚本文件进行解析,得到测试用例数据和业务流程信息;依据所述业务流程信息,对所述测试用例数据进行测试,得到测试进程列队;解析所述测试进程列队的头文件,得到所述类型信息;所述进程列队的头文件用于描述进程列队的属性。

处理器401具体用于:从所述测试脚本文件中提取测试原语;根据所述测试原语生成有序的控制指令队列;对所述控制指令队列进行转换,得到目标测试语句;将所述目标测试语句按照与所述控制指令队列一致的时序,配置到预设的脚本框架中,得到所述目标脚本文件。

处理器401具体用于:根据所述目标脚本文件,在所述应用的任一操作界面中随机触发模拟操作指令;记录所述应用根据所述模拟操作指令的响应信息。

应当理解,在本发明实施例中,所称处理器501可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

输入设备402可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备403可以包括显示器(lcd等)、扬声器等。

该存储器404可以包括只读存储器和随机存取存储器,并向处理器401提供指令和数据。存储器404的一部分还可以包括非易失性随机存取存储器。例如,存储器404还可以存储设备类型的信息。

具体实现中,本发明实施例中所描述的处理器401、输入设备402、输出设备403可执行本发明实施例提供的一种应用的测试方法的第一实施例和第二实施例中所描述的实现方式,也可执行本发明实施例所描述的设备的实现方式,在此不再赘述。

在本发明的另一实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现:

载入测试脚本文件;

获取所述测试脚本文件的类型信息;

根据所述类型信息查找脚本文件转换工具的标识;

根据所述脚本文件转换工具的标识,调用脚本文件转换工具对所述测试脚本文件进行转换,得到目标脚本文件,所述目标脚本文件适用于当前测试平台;

执行所述目标脚本文件,以对应用进行测试。

所述计算机程序被处理器执行时还实现:

获取各类所述测试脚本的控制目标信息或测试流程信息;

根据所述控制目标信息或所述测试流程信息,分别为各类所述脚本文件转换工具分配所述标识;

将每类所述脚本文件的所述类型信息,与所述标识对应存储至目标数据库中。

所述计算机程序被处理器执行时还实现:

对所述测试脚本文件进行解析,得到测试用例数据和业务流程信息;

依据所述业务流程信息,对所述测试用例数据进行测试,得到测试进程列队;

解析所述测试进程列队的头文件,得到所述类型信息;所述进程列队的头文件用于描述进程列队的属性。

所述计算机程序被处理器执行时还实现:

从所述测试脚本文件中提取测试原语;

根据所述测试原语生成有序的控制指令队列;

对所述控制指令队列进行转换,得到目标测试语句;

将所述目标测试语句按照与所述控制指令队列一致的时序,配置到预设的脚本框架中,得到所述目标脚本文件。

所述计算机程序被处理器执行时还实现:

根据所述目标脚本文件,在所述应用的任一操作界面中随机触发模拟操作指令;

记录所述应用根据所述模拟操作指令的响应信息。

以上可以看出,本发明实施例通过获取载入的测试脚本文件的类型信息,根据类型信息查找脚本文件转换工具的标识,再根据脚本文件转换工具的标识,调用脚本文件转换工具对测试脚本文件进行转换,得到目标脚本文件,目标脚本文件适用于当前测试平台,执行目标脚本文件,以对应用进行测试,使得在不同的测试平台上对应用进行测试时,无需因为测试平台的不同而重新配置测试脚本,节约了测试脚本的开发成本。

通过获取各类测试脚本的控制目标信息或测试流程信息,再根据控制目标信息或测试流程信息,分别为各类脚本文件转换工具分配标识,并将每类脚本文件的类型信息,与标识对应存储至目标数据库中,使得在根据类型信息查找脚本文件转换工具的标识时,可以直接从目标数据库中查找得到,提高了脚本文件转换工具的调用效率。

所述计算机可读存储介质可以是前述任一实施例所述的设备的内部存储单元,例如计算机的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述设备所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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