CN108399132B - 一种调度测试方法、装置及存储介质 - Google Patents

一种调度测试方法、装置及存储介质 Download PDF

Info

Publication number
CN108399132B
CN108399132B CN201810237216.8A CN201810237216A CN108399132B CN 108399132 B CN108399132 B CN 108399132B CN 201810237216 A CN201810237216 A CN 201810237216A CN 108399132 B CN108399132 B CN 108399132B
Authority
CN
China
Prior art keywords
task
test
tested
module
configuration file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810237216.8A
Other languages
English (en)
Other versions
CN108399132A (zh
Inventor
崔圆
林嫣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201810237216.8A priority Critical patent/CN108399132B/zh
Publication of CN108399132A publication Critical patent/CN108399132A/zh
Application granted granted Critical
Publication of CN108399132B publication Critical patent/CN108399132B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明实施例公开了调度测试方法、装置及存储介质,应用于信息处理技术领域。当通过任务调度平台接收到某一待测试任务的第一操作信息,则任务调度平台会确定待测试任务的配置文件,包括执行待测试任务的多个测试模块的标识信息及执行顺序;然后根据配置文件调用对应的测试模块,并由调用的测试模块执行待测试任务。这样,将执行测试任务过程中的方法划分到多个独立的测试模块,并通过配置文件限定执行测试任务的各个测试模块的顺序,可以不限定于执行某一种测试任务的特定方法流程,使得通过一个任务调度平台能综合多种测试任务,方便任务调度平台的扩展,且很大程度提高了测试效率。

Description

一种调度测试方法、装置及存储介质
技术领域
本发明涉及信息处理技术领域,特别涉及一种调度测试方法、装置及存储介质。
背景技术
在开发应用程序的过程中,需要对应用程序进行测试,且可以采用多种测试方法对应用程序进行测试,而每种测试方法对应一套任务调度平台,具体地,需要任务调度平台将相应的测试任务下发给装载应用程序的应用终端,并由应用终端执行该测试任务,而应用终端会将执行结果上报给任务调度平台。
现有的每个任务调度平台都是采用一体化的方式构建,仅支持单一测试任务的下发,且下发测试任务的流程固定,如果需要通过执行其它测试任务对应用程序进行测试时,需要重新开发一套适配的任务调度平台,从而造成测试效率低。
发明内容
本发明实施例提供一种调度测试方法、装置及存储介质,实现了根据确定的配置文件调用相应的测试模块,并由调用的测试模块执行待测试任务。
本发明实施例第一方面提供一种调度测试方法,包括:
通过任务调度平台接收待测试任务的第一操作信息;
根据所述第一操作信息,确定所述待测试任务的配置文件,所述配置文件包括执行所述待测试任务的多个测试模块的标识信息及执行顺序;
根据所述配置文件调用对应的测试模块,并由所述调用的测试模块执行所述待测试任务。
本发明实施例第一方面提供一种调度测试装置,包括:
操作接收单元,用于通过所述调度测试装置接收待测试任务的第一操作信息;
配置确定单元,用于根据所述第一操作信息,确定所述待测试任务的配置文件,所述配置文件包括执行所述待测试任务的多个测试模块的标识信息及执行顺序;
测试单元,用于根据所述配置文件调用对应的测试模块,并由所述调用的测试模块执行所述待测试任务。
本发明实施例第三方面提供一种存储介质,所述存储介质储存多条指令,所述指令适于由处理器加载并执行如本发明实施例第一方面所述的调度测试方法。
本发明实施例第四方面提供一种终端设备,包括处理器和存储介质,所述处理器,用于实现各个指令;
所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如本发明实施例第一方面所述的调度测试方法。
在本实施例的方法中,任务调度平台综合了多种测试任务,这样当通过任务调度平台接收到某一待测试任务的第一操作信息,则任务调度平台会确定待测试任务的配置文件,包括执行待测试任务的多个测试模块的标识信息及执行顺序;然后根据配置文件调用对应的测试模块,并由调用的测试模块执行待测试任务。这样,将执行测试任务过程中的方法划分到多个独立的测试模块,并通过配置文件限定执行不同测试任务所用到的各个测试模块的执行顺序,可以不限定于执行某一种测试任务的特定方法流程,使得通过一个任务调度平台能综合多种测试任务,当新增加某一种测试任务时,只需要将该新增加的测试任务的相关信息储存到任务调度平台即可,方便任务调度平台的扩展,且很大程度提高了测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种任务调度平台的结构示意图;
图2是本发明一个实施例提供的一种调度测试方法的流程图;
图3是本发明一个实施例中任务调度平台提供的用户操作界面的示意图;
图4a是本发明应用实施例中提供的一种任务调度平台的结构示意图;
图4b是本发明应用实施例中任务调度平台中各个测试模块的示意图;
图5是本发明应用实施例中子进程中模块及各个测试模块执行的方法流程图;
图6是本发明应用实施例中子进程中模块包括的主线程与各个测试模块执行待测试任务的流程图;
图7是本发明应用实施例中服务模块执行的方法流程图;
图8是本发明实施例提供的一种调度测试装置的结构示意图;
图9是本发明实施例提供的另一种调度测试装置的结构示意图;
图10是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排它的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供一种调度测试方法,主要可以应用于如图1所示的任务调度平台中,该任务调度平台包括:主控模块及多个测试模块(图1中以n个执行模块为例说明),其中,主控模块用于确定各个测试任务的配置文件,并根据配置文件依次调用相应的测试模块;各个测试模块用于执行相应的方法,且某一测试模块所执行的方法是调度测试过程中的至少一个步骤。本发明实施例的任务调度平台综合了多种测试任务的下发,及多种测试任务的执行流程,具有广泛的适用性。
在本发明实施例中,任务调度平台可以通过如下方法进行调度测试:
通过任务调度平台接收待测试任务的第一操作信息;根据第一操作信息,确定待测试任务的配置文件,配置文件包括执行待测试任务的多个测试模块的标识信息及执行顺序;根据配置文件调用对应的测试模块,并由调用的测试模块执行待测试任务。
这样,将执行测试任务过程中的方法划分到多个独立的测试模块,并通过配置文件限定执行不同测试任务所用到的各个测试模块的执行顺序,可以不限定于执行某一种测试任务的特定方法流程,使得通过一个任务调度平台能综合多种测试任务,当新增加某一种测试任务时,只需要将该新增加的测试任务的相关信息储存到任务调度平台即可,方便任务调度平台的扩展,且很大程度提高了测试效率。
本发明实施例提供一种调度测试方法,主要是由如上的任务调度平台所执行的方法,流程图如图2所示,包括:
步骤101,通过任务调度平台接收待测试任务的第一操作信息。
可以理解,在本发明实施中,任务调度平台的主控模块可以向用户提供用户操作界面,以发起各个待测试任务的执行流程,例如,任务调度平台可以提供如图3所示的用户操作界面,在该用户操作界面上包括待测试任务的第一选择接口,且还可以包括待测试任务对应的应用程序的第二选择接口等。其中,第一选择接口和第二选择接口可以是任意形式,图3中所示的只是一种具体实现方式,即通过下拉键(即图中的倒三角)来表示,当用户点击第一个下拉键时,任务调度平台可以显示可供用户选择的测试任务的信息(即测试任务1到测试任务p),当用户点击第二个下拉键时,任务调度平台可以显示可供用户选择的应用程序的信息(即应用程序1到应用程序m)。
这样用户可以通过用户操作界面上的第一选择接口选择任一个测试任务,并点击“确定”按钮,这样主控模块就通过第一选择接口接收到待测试任务的第一操作信息。进一步地,用户还可以通过用户操作界面上的第二选择接口选择测试任务的至少一个应用程序,并点击“确定”按钮,这样,主控模块会通过第二选择接口接收到至少一个应用程序的第二操作信息,该至少一个应用程序可以为执行待测试任务所依赖的应用程序。
其中,测试任务是对应用程序进行测试的目的,具体可以包括但不限于如下任一项信息:性能测试,内存泄露测试,安装包检查,静态码扫描测试,数据上报测试,用户界面(User Interface,UI)卡顿测试,严苛模式(strictmode)检查,金刚扫描,及robotiummonkey和***monkey等稳定性测试。应用程序可以为实现某种功能的程序,比如新闻程序,或视频程序等。
例如,monkey稳定性测试会覆盖到应用程序所用的功能,但是重点会关注应用程序是否会崩溃(crash),内存泄漏测试也会覆盖应用程序所有功能,但是重点会关注在遍历所有功能时是否有内存溢出。
步骤102,根据第一操作信息,确定待测试任务的配置文件,配置文件包括执行该待测试任务的多个测试模块的标识信息及执行顺序。
在本发明实施中,任务调度平台中的多个测试模块可以按照多种基准进行划分,例如,按照测试任务执行的方法顺序的基准,可以划分为如下测试模块:上报任务状态模块(reportTaskStatus)、截图模块(makeScreenShot)、上报日志(log)模块(runLogUpload)、安装被测应用模块(installPackage)、运行测试工具模块(runTestTool)、下载被测应用模块(downloadTestPackage)及下载测试工具模块(downloadTestTool),其中,测试工具是指执行测试任务的类型,被测应用是指应用程序。
又例如,按照执行测试任务的外部依赖的基准,可以划分为如下测试模块:安装包模块(可以执行下载、安装、卸载等方法),及工具模块(可以执行开始、停止等方法)等。其中,执行测试任务的外部依赖是指在执行测试任务的过程中所依赖的该任务调度平台之外的程序,比如上述的安装包模块主要依赖于应用程序,而工具模块主要依赖于测试工具等。
上述的每个测试模块都是独立的可执行程序,可以单独调用,且在任务调度平台的本地数据库中各个测试模块的信息相互独立地储存。
在执行本步骤时,任务调度平台的主控模块可以根据待测试任务对应的执行策略确定该配置文件,不同的测试任务对应不同的配置文件,该配置文件中可以包括:执行待测试任务需要哪些测试模块,具体通过测试模块的标识信息来指示;及这些测试模块的执行顺序,这里执行待测试任务的多个测试模块可以是任务调度平台所包括的所有测试模块,也可以是部分测试模块。其中,每个待测试任务相应的执行策略可以是用户预先设置在任务调度平台的。这样,当任务调度平台需要扩展新的测试任务时,只需要在任务调度平台储存新增加测试任务的信息,该新增加测试任务的信息包括新增加测试任务对应的执行策略,还可以包括新增加测试任务的标识信息等。
进一步地,由于任务调度平台中的某个测试模块可以执行至少一个方法,例如上述的上报任务状态模块可以执行上报测试任务开始执行的状态,还可以上报测试任务执行结束的状态,则在本步骤中确定的配置文件中如果包括上报任务状态模块的标识信息,则在配置文件中还需要包括上报任务状态模块执行上述待测试任务过程中的具体方法。
在有些情况下,配置文件可以包括执行待测试任务的多个测试模块执行相应方法所依赖的参数等。例如,下载被测应用模块依赖的参数可以包括:项目标识,应用程序的***和包标识等;安装被测应用模块依赖的参数可以包括:设备标识,应用程序的***,包标识及包名称等。
步骤103,根据配置文件调用对应的测试模块,并由调用的测试模块执行待测试任务。
具体地,当任务调度平台中的主控模块确定了配置文件后,会根据配置文件,按照顺序依次调用对应的测试模块,由调用的测试模块执行相应的方法。在调用测试模块的过程中,如果是首次调用,则主控模块会先加载测试模块,即将测试模块的信息缓存到任务调度平台的内存中,然后再运行测试模块;如果非首次调用,由于在任务调度平台的内存中已经加载了测试模块的信息,则主控模块会直接跳转到运行测试模块。
需要说明的是,上述步骤101到103是当用户通过任务调度平台提供的用户操作界面,发起一个待测试任务时,执行该待测试任务的方法。在具体的应用实施例中,用户可以通过任务调度平台提供的用户操作界面,同时发起多个待测试任务,这样任务调度平台会并行地按照上述步骤101到103的方法,执行多个待测试任务。
可见,在本实施例的方法中,任务调度平台综合了多种测试任务,这样当通过任务调度平台接收到某一待测试任务的第一操作信息,则任务调度平台会确定待测试任务的配置文件,包括执行待测试任务的多个测试模块的标识信息及执行顺序;然后根据配置文件调用对应的测试模块,并由调用的测试模块执行待测试任务。这样,将执行测试任务过程中的方法划分到多个独立的测试模块,并通过配置文件限定执行不同测试任务所用到的各个测试模块的执行顺序,可以不限定于执行某一种测试任务的特定方法流程,使得通过一个任务调度平台能综合多种测试任务,当新增加某一种测试任务时,只需要将该新增加的测试任务的相关信息储存到任务调度平台即可,方便任务调度平台的扩展,且很大程度提高了测试效率。
需要说明的是,上述实施例的方法是用户通过任务调度平台发起不依赖任务调度平台之外的其它应用程序执行待测试任务的流程,在其它具体的实施例中,用户还可以通过任务调度平台发起需要依赖任务调度平台之外的至少一个应用程序执行待测试任务的流程。这样,在任务调度平台的主控模块执行上述步骤102之前,还可以通过任务调度平台接收待测试任务对应的至少一个应用程序的第二操作信息;则在执行上述步骤103时,当根据配置文件调用对应的测试模块为第一测试模块,则由第一测试模块根据第二操作信息,将待测试任务发送给应用程序对应的应用终端进行执行。这里至少一个应用程序的应用终端可以是装载至少一个应用程序的一个物理的应用终端;或是分别装载至少一个应用程序的至少一个物理的应用终端;还可以是都装载了至少一个应用程序的多个物理终端。而第一测试模块是用于执行待测试任务的模块。
在执行上述步骤103时,当根据配置文件调用对应的测试模块为第二测试模块,则由第二测试模块接收至少一个应用程序的应用终端上报的待测试任务的执行信息。这里执行信息可以包括执行待测试任务的日志(log),执行待测试任务时的截图信息,及执行待测试任务过程中产生的标签(flag)等。这里第二测试模块是用于获取上报信息的模块。
以下以一个具体的应用实例来说明调度测试方法,如图4a所示,本实施例中的任务调度平台可以包括子进程(subprocess)主控模块、服务(server)模块、多个测试模块及数据库,且本实施例中的多个测试模块是按照测试任务执行的方法顺序的基准划分的,如图4b所示,具体包括如下模块:上报任务状态模块、截图模块、上报日志(log)模块、安装被测应用模块、运行测试工具模块、下载被测应用模块及下载测试工具模块。
其中,子进程主控模块,用于确定各个测试任务的配置文件,并根据配置文件依次调用相应的测试模块。
服务模块,用于负责管理子进程主控模块与各个测试模块之间传输的数据,及管理各个测试模块之间传输的数据等。
数据库,用于储存独立地储存各个测试模块的信息,比如程序代码等;且还可以储存在执行测试任务过程中的标签(flag)、日志和截图等。该数据库具体可以是sqlite数据库。
其中,标签是用于链接各个测试模块,例如,当下载测试工具模块在下载完成测试工具后,会生成一条标签,该标签记录了测试工具下载完成的信息及下载路径;然后运行测试工具模块只有读取到该标签,才会执行测试工具。
上报日志模块,用于在测试任务的执行过程中上报日志,主要是上报测试任务执行过程中遇到的问题等信息;还用于通知上报日志模块停止上报。
上报任务状态模块,用于上报测试任务开始执行的状态,还可以上报测试任务执行结束的状态。
截图模块,用于开始截取图片,方便对于测试任务执行过程中的问题定位,还可以通知截图模块停止截图。
安装被测应用模块,用于安装被测应用,及卸载被测应用(即应用程序)。
运行测试工具模块,用于执行测试工具,即测试任务。
下载被测应用模块,用于下载被测应用。
下载测试工具模块,用于下载测试工具。
上述的各个测试模块可以大致分为阻塞(block)模块和非阻塞(unblock)模块,其中,非阻塞模块是指调用后无需等待返回结果的模块,比如上述的截图模块在执行开始截取图片的步骤时属于非阻塞模块;阻塞模块是指按顺序调用的模块,当前模块的执行必须在上一个模块执行成功后才执行,比如上述的下载被测应用模块和下载测试工具模块等。
且在本实施例中,任务调度平台可以下发的测试任务可以包括如下至少一个测试任务:性能测试,内存泄露测试,安装包检查,静态码扫描测试,数据上报测试,UI卡顿测试,strictmode检查,金刚扫描,robotiummonkey,及***monkey稳定性测试等。其中,有些测试任务是设备监控任务,指依赖于任务调度平台之外的设备执行的任务,即在测试任务执行的过程中需要连接任务调度平台之外的设备,在该设备上装载应用程序,并由应用程序执行测试任务,比如***Monkey稳定性测试。有些测试任务是非设备任务,指不依赖于任务调度平台之外设备的任务,由任务调度平台执行测试任务,比如,静态码扫描测试等。
参考图5所示,本实施例的子进程主控模块及各个测试模块可以按照如下的方法执行:
步骤201,子进程主控模块可以提供用户操作界面,用户可以通过用户操作界面发起待测试任务的流程。
步骤202,子进程主控模块会同时启动主线程和管理线程,主线程会根据上述步骤201发起的待测试任务,确定对应的配置文件,并将该配置文件通过数据库的接口,比如套接字(soket)接口写入到本地数据库中。
其中,在主线程确定配置文件后,可以先检查各个测试模块是否为最新版本的测试模块,如果不是,需要下载最新版本的测试模块。
步骤203,主线程根据数据库中的配置文件,按照一定的顺序调用对应的各个测试模块,且运行调用的各个测试模块,而各个测试模块联合起来执行待测试任务。
其中,对于测试模块中的各个阻塞模块,需要等待另一测试模块执行完成后,再运行当前的阻塞模块,且获取当前的阻塞模块的运行结果,且将运行结果储存到数据库中,并结束流程;而各个非阻塞模块在执行完成后,可以直接结束流程。
具体地,主线程与各个测试模块之间可以通过如下步骤A到D执行待测试任务,流程图如图6所示,包括:
步骤A、主线程会通过数据库的接口,从数据库中读取待测试任务对应的配置文件,在配置文件中包括需要用到的测试模块的标识信息,各个测试模块的执行方法和执行顺序,还可以包括测试模块运行时的一些必要参数。
步骤B、主线程在读取了配置文件后,会解析配置文件,根据配置文件在数据库中建立文件目录,其中,一个测试模块对应一个目录。
步骤C、主线程从配置文件中获取各个测试模块的标识信息,执行方法和执行顺序,还有一些必要的参数。
步骤D、主线程根据上述步骤C获取的信息,调用相应的测试模块,由相应的测试模块执行待测试任务。在执行完待测试任务后,结束流程。
步骤204,在主线程执行上述步骤202和203时,管理线程会判断各个测试模块是否运行失败,如果运行失败,则执行步骤205;如果运行未失败,则执行步骤206。
其中,管理线程在判断阻塞模块是否运行失败时,可以根据阻塞模块获取的各个阻塞模块的运行结果来判断。
步骤205,结束流程,并结束各个测试模块的运行。
步骤206,需要用户通过管理线程提供给的用户接口,结束各个未运行失败的测试模块。
参考图7所示,本实施例的服务模块可以按照如下的方法执行:
步骤301,服务模块会开启一个端口(比如60080端口),并监听该端口,且服务模块会维护一个队列,该队列用于暂时缓存储存到数据库中的信息。
步骤302,如果服务模块监听到该端口有数据写入时,比如有标签,截图或日志写入时,服务模块会将需要写入的数据缓存到服务模块维护的队列中;如果要从数据库中读取数据时,服务模块可以将维护的队列中的数据写入到数据库中,且从数据库中读取相应的数据。
步骤303,服务模块在执行上述步骤301和302的同时,会开启一个定时任务,即定时地检查该服务模块维护的队列是否为空,如果为空,则继续检查队列是否为空;如果非空,则将队列中的数据写入到数据库。
本发明实施例还提供一种调用测试装置,比如上述的任务调度平台,其结构示意图如图8所示,具体可以包括:
操作接收单元10,用于通过所述调度测试装置接收待测试任务的第一操作信息。
配置确定单元11,用于根据所述操作接收单元10接收的第一操作信息,确定所述待测试任务的配置文件,所述配置文件包括执行所述待测试任务的多个测试模块的标识信息及执行顺序。
所述配置确定单元11,具体用于根据所述待测试任务对应的执行策略,确定所述配置文件。
其中,所述多个测试模块包括如下模块的任意组合:上报任务状态模块、截图模块、上报日志模块、安装被测应用模块、运行测试工具模块、下载被测应用模块及下载测试工具模块。
或者,所述多个测试模块包括工具模块,或包括工具模块和安装包模块;其中,所述安装包模块用于获取,安装和卸载应用程序,所述工具模块用于开始执行待测试任务和停止执行待测试任务。
测试单元12,用于根据所述配置确定单元11确定的配置文件调用对应的测试模块,并由所述调用的测试模块执行所述待测试任务。
进一步地,所述操作接收单元10,还用于通过所述调度测试装置接收所述待测试任务对应的至少一个应用程序的第二操作信息;则当测试单元12根据所述配置文件调用对应的测试模块为第一测试模块,由所述第一测试模块根据所述第二操作信息,将所述待测试任务发送给所述至少一个应用程序对应的应用终端进行执行。
且当测试单元12根据所述配置文件调用对应的测试模块为第二测试模块,由所述第二测试模块接收所述至少一个应用程序的应用终端上报的所述待测试任务的执行信息。
可见,在本实施例的装置中综合了多种测试任务,这样当操作接收单元10通过调度测试装置接收到某一待测试任务的第一操作信息,则配置确定单元11会确定待测试任务的配置文件,包括执行待测试任务的多个测试模块的标识信息及执行顺序;然后测试单元12根据配置文件调用对应的测试模块,并由调用的测试模块执行待测试任务。这样,将执行测试任务过程中的方法划分到多个独立的测试模块,并通过配置文件限定执行不同测试任务所用到的各个测试模块的执行顺序,可以不限定于执行某一种测试任务的特定方法流程,使得通过一个任务调度平台能综合多种测试任务,当新增加某一种测试任务时,只需要将该新增加的测试任务的相关信息储存到调度测试装置即可,方便任务调度平台的扩展,且很大程度提高了测试效率。
参考图9所示,在一个具体的实施例中,调度测试装置除了可以包括如图8所示的结构外,还可以包括:界面提供单元13和储存单元14,其中:
界面提供单元13,用于提供用户操作界面,所述用户操作界面包括所述待测试任务的第一选择接口;则所述操作接收单元10,具体用于通过所述界面提供单元13提供的第一选择接口接收所述待测试任务的第一操作信息。
储存单元14,用于储存新增加测试任务的信息,新增加测试任务的信息包括所述新增加测试任务对应的执行策略。这样,当配置确定单元11在确定该新增加测试任务的配置文件时,会根据储存单元14储存的执行策略来确定。
本发明实施例还提供一种终端设备,其结构示意图如图10所示,该终端设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以***处理器(centralprocessing units,CPU)20(例如,一个或一个以上处理器)和存储器21,一个或一个以上存储应用程序221或数据222的存储介质22(例如一个或一个以上海量存储设备)。其中,存储器21和存储介质22可以是短暂存储或持久存储。存储在存储介质22的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对终端设备中的一系列指令操作。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中的一系列指令操作。
具体地,在存储介质22中储存的应用程序221包括调度测试的应用程序,且该程序可以包括上述调度测试装置中的操作接收单元10,配置确定单元11,测试单元12,界面提供单元13和储存单元14,在此不进行赘述。更进一步地,中央处理器20可以设置为与存储介质22通信,在终端设备上执行存储介质22中储存的调度测试的应用程序对应的一系列操作。
终端设备还可以包括一个或一个以上电源23,一个或一个以上有线或无线网络接口24,一个或一个以上输入输出接口25,和/或,一个或一个以上操作***223,例如WindowsServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述方法实施例中所述的由调度测试装置所执行的步骤可以基于该图10所示的终端设备的结构。
本发明实施例还提供一种存储介质,所述存储介质储存多条指令,所述指令适于由处理器加载并执行如上述调度测试装置所执行的调度测试方法。
本发明实施例还提供一种终端设备,包括处理器和存储介质,所述处理器,用于实现各个指令;
所述存储介质用于储存多条指令,所述指令用于由处理器加载并执行如上述调度测试装置所执行的调度测试方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM)、随机存取存储器RAM)、磁盘或光盘等。
以上对本发明实施例所提供的调度测试方法、装置及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (12)

1.一种调度测试方法,其特征在于,包括:
通过任务调度平台接收待测试任务的第一操作信息;
根据所述第一操作信息,确定所述待测试任务的配置文件,所述配置文件包括执行所述待测试任务的多个测试模块的标识信息及执行顺序,及所述多个测试模块执行相应方法所依赖的参数;其中,每个测试模块是独立的可执行程序,所述确定所述待测试任务的配置文件,具体包括:根据所述待测试任务对应的执行策略,确定所述配置文件;
根据所述配置文件调用对应的测试模块,并由所述调用的测试模块执行所述待测试任务;
所述方法还包括:储存新增加测试任务的信息,新增加测试任务的信息包括所述新增加测试任务对应的执行策略。
2.如权利要求1所述的方法,其特征在于,所述通过任务调度平台接收待测试任务的第一操作信息之前,所述方法还包括:
提供用户操作界面,所述用户操作界面包括所述待测试任务的第一选择接口;
则所述通过任务调度平台接收待测试任务的第一操作信息,具体包括:通过所述第一选择接口接收所述待测试任务的第一操作信息。
3.如权利要求1所述的方法,其特征在于,所述多个测试模块包括如下模块的任意组合:
上报任务状态模块、截图模块、上报日志模块、安装被测应用模块、运行测试工具模块、下载被测应用模块及下载测试工具模块。
4.如权利要求1所述的方法,其特征在于,所述多个测试模块包括工具模块;
其中,所述工具模块用于开始执行待测试任务和停止执行待测试任务。
5.如权利要求4所述的方法,其特征在于,所述多个测试模块还包括安装包模块,所述安装包模块用于获取,安装和卸载应用程序。
6.如权利要求1至5任一项所述的方法,其特征在于,
所述确定所述待测试任务的配置文件之前,所述方法还包括:通过所述任务调度平台接收所述待测试任务对应的至少一个应用程序的第二操作信息;
则当根据所述配置文件调用对应的测试模块为第一测试模块,所述由所述调用的测试模块执行所述待测试任务,具体包括:所述第一测试模块根据所述第二操作信息,将所述待测试任务发送给所述至少一个应用程序对应的应用终端进行执行。
7.如权利要求6所述的方法,其特征在于,
当根据所述配置文件调用对应的测试模块为第二测试模块,所述由所述调用的测试模块执行所述待测试任务,具体包括:所述第二测试模块接收所述至少一个应用程序的应用终端上报的所述待测试任务的执行信息。
8.一种调度测试装置,其特征在于,包括:
操作接收单元,用于接收待测试任务的第一操作信息;
配置确定单元,用于根据所述第一操作信息,确定所述待测试任务的配置文件,所述配置文件包括执行所述待测试任务的多个测试模块的标识信息及执行顺序,及所述多个测试模块执行相应方法所依赖的参数;其中,每个测试模块是独立的可执行程序,所述配置确定单元,具体用于根据所述待测试任务对应的执行策略,确定所述配置文件;
测试单元,用于根据所述配置文件调用对应的测试模块,并由所述调用的测试模块执行所述待测试任务;
所述装置还包括:储存单元,用于储存新增加测试任务的信息,新增加测试任务的信息包括所述新增加测试任务对应的执行策略。
9.如权利要求8所述的装置,其特征在于,
界面提供单元,用于提供用户操作界面,所述用户操作界面包括所述待测试任务的第一选择接口;
则所述操作接收单元,具体用于通过所述第一选择接口接收所述待测试任务的第一操作信息。
10.如权利要求8至9任一项所述的装置,其特征在于,
所述操作接收单元,还用于通过所述调度测试装置接收所述待测试任务对应的至少一个应用程序的第二操作信息;
则当所述测试单元根据所述配置文件调用对应的测试模块为第一测试模块,由所述第一测试模块根据所述第二操作信息,将所述待测试任务发送给所述至少一个应用程序对应的应用终端进行执行;
当所述测试单元根据所述配置文件调用对应的测试模块为第二测试模块,由所述第二测试模块接收所述至少一个应用程序的应用终端上报的所述待测试任务的执行信息。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质储存多条指令,所述指令适于由处理器加载并执行如权利要求1至7任一项所述的调度测试方法。
12.一种终端设备,其特征在于,包括处理器和存储器,所述处理器,用于实现各个指令;
所述存储器用于储存多条指令,所述指令用于由处理器加载并执行如权利要求1至7任一项所述的调度测试方法。
CN201810237216.8A 2018-03-21 2018-03-21 一种调度测试方法、装置及存储介质 Active CN108399132B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810237216.8A CN108399132B (zh) 2018-03-21 2018-03-21 一种调度测试方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810237216.8A CN108399132B (zh) 2018-03-21 2018-03-21 一种调度测试方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN108399132A CN108399132A (zh) 2018-08-14
CN108399132B true CN108399132B (zh) 2021-01-08

Family

ID=63091557

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810237216.8A Active CN108399132B (zh) 2018-03-21 2018-03-21 一种调度测试方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN108399132B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109710508B (zh) * 2018-08-20 2024-03-15 天航长鹰(江苏)科技有限公司 测试方法、测试装置、测试设备及计算机可读存储介质
CN111435227B (zh) * 2018-12-25 2023-07-21 中移(杭州)信息技术有限公司 一种智能家居设备测试方法、装置、设备及介质
CN109992506B (zh) * 2019-03-18 2024-05-31 平安科技(深圳)有限公司 调度测试方法、装置、计算机设备和存储介质
CN110704311B (zh) * 2019-09-24 2023-11-21 卓米私人有限公司 一种应用程序测试方法、装置、电子设备及可读存储介质
CN111008124B (zh) * 2019-10-25 2023-01-24 武汉迎风聚智科技有限公司 数据库测试的任务调度方法以及装置
CN110968504A (zh) * 2019-11-07 2020-04-07 京东数字科技控股有限公司 测试方法、平台、电子设备和计算机存储介质
CN111352668A (zh) * 2020-02-27 2020-06-30 珠海格力智能装备有限公司 基于插件的设备测试方法及装置、基于插件的测试***
CN111580989B (zh) * 2020-04-30 2023-05-02 成都新潮传媒集团有限公司 一种文件处理方法及装置
CN112527312B (zh) * 2020-12-15 2022-03-01 西安中朗智控科技有限公司 一种嵌入式***的测试方法和测试装置
CN114356771A (zh) * 2021-12-31 2022-04-15 龙芯中科(武汉)技术有限公司 数据处理实体的操作方法、装置和设备
CN115623077B (zh) * 2022-10-18 2023-08-18 开元华创科技(集团)有限公司 自主可控测试***
CN116594884B (zh) * 2023-05-16 2023-10-27 上海安般信息科技有限公司 一种基于使用并发方式的模糊测试方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107577527A (zh) * 2017-08-30 2018-01-12 北京金山安全软件有限公司 任务生成、调度方法及装置
CN107608878A (zh) * 2017-08-11 2018-01-19 北京奇虎科技有限公司 一种Web自动化测试方法和装置
CN108334454A (zh) * 2018-03-02 2018-07-27 东信和平科技股份有限公司 一种智能卡测试平台的自动调度方法和***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107608878A (zh) * 2017-08-11 2018-01-19 北京奇虎科技有限公司 一种Web自动化测试方法和装置
CN107577527A (zh) * 2017-08-30 2018-01-12 北京金山安全软件有限公司 任务生成、调度方法及装置
CN108334454A (zh) * 2018-03-02 2018-07-27 东信和平科技股份有限公司 一种智能卡测试平台的自动调度方法和***

Also Published As

Publication number Publication date
CN108399132A (zh) 2018-08-14

Similar Documents

Publication Publication Date Title
CN108399132B (zh) 一种调度测试方法、装置及存储介质
CN109302522B (zh) 测试方法、装置以及计算机***和介质
CN106844136B (zh) 一种程序崩溃信息的收集方法及***
US7512933B1 (en) Method and system for associating logs and traces to test cases
CN111324423B (zh) 容器内进程的监控方法、装置、存储介质和计算机设备
CN111090536A (zh) 一种获取内存泄露信息的方法、装置、介质和电子设备
CN110225078B (zh) 一种应用服务更新方法、***及终端设备
CN107045475B (zh) 测试方法和装置
CN102999343A (zh) 禁止启动项目自启动的方法和装置
US10579513B2 (en) Test run control method and apparatus
US20130185596A1 (en) Serialized Error Injection Into a Function Under Test
CN113050984A (zh) 资源调取方法、装置、电子设备及存储介质
CN111159031A (zh) 应用移动终端自动化测试的方法、计算机装置及计算机可读存储介质
CN112199284A (zh) 程序自动化测试方法及其相应的装置、设备、介质
CN110851204A (zh) 应用启动的方法及装置、应用打包的方法及装置
CN103019706A (zh) 针对启动项目的处理方法和装置
CN109783284A (zh) 信息获取方法、***及服务器、计算机可读存储介质
CN106997313B (zh) 一种应用程序的信号处理方法、***及终端设备
CN112256588A (zh) 应用程序测试的资源配置方法、计算机可读存储介质及测试机
CN109739756B (zh) 移动终端应用测试的方法及设备
CN116521414A (zh) 故障代码定位方法、云端服务器、***及存储介质
CN112463574A (zh) 软件测试方法、装置、***、设备和存储介质
CN115454856A (zh) 多应用的安全检测方法、装置、介质及电子设备
CN115525568A (zh) 代码覆盖率的巡检方法、装置、计算机设备及存储介质
CN111209197B (zh) 应用程序持续集成测试方法、***、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant