CN107766236B - 测试任务自动化管理方法、装置、设备及存储介质 - Google Patents
测试任务自动化管理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN107766236B CN107766236B CN201710857314.7A CN201710857314A CN107766236B CN 107766236 B CN107766236 B CN 107766236B CN 201710857314 A CN201710857314 A CN 201710857314A CN 107766236 B CN107766236 B CN 107766236B
- Authority
- CN
- China
- Prior art keywords
- test
- task
- code
- executing
- packet
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/368—Test management for test version control, e.g. updating test cases to a new software version
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及自动化测试技术领域,本发明提供一种测试任务自动化管理方法、装置、设备及存储介质,自动化测试任务管理方法包括:获取即将执行的测试任务,并根据测试任务获取其对应的测试包;根据系统中新增的代码对测试包中的代码进行更新以获取最新版本的测试包;验证执行测试任务的测试环境,当确定所述测试环境满足测试条件时,根据所述最新版本的测试包执行测试任务。本发明当测试环境满足测试条件时,根据最新测试包执行测试任务,避免测试包版本不对以及测试环境被改变带来的测试不准确的问题,提高了测试效率,合理有效的安排了测试机的使用,节约了人力资源。
Description
技术领域
本发明涉及软件自动化测试技术领域,特别涉及一种自动化测试任务管理方法、装置、设备及存储介质。
背景技术
通常测试任务的执行都是人工触发的,测试时需要执行哪一些测试包也是人工临时定义的,该种方式容易导致疏漏,而且在人工触发的时候不会对测试环境和测试机器做验证,测试结果很容易受到测试环境的影响。并且测试包在执行之前也很难有全面的检查,容易在测试执行后发现测试包版本不对,导致测试重跑。由于自动化测试包的执行一般都需要很长的时间,因此上述缺陷会造成很多的人力浪费。
发明内容
本发明的目的在于提供一种测试任务自动化管理方法、装置、设备及存储介质,能够实现在执行测试任务之前对测试包进行更新以及对测试环境进行验证,节约人力资源。
本发明是这样实现的,本发明第一方面提供一种自动化测试任务管理方法,所述自动化测试任务管理方法包括:
获取即将执行的测试任务,并根据所述测试任务获取其对应的测试包;
根据系统中新增的代码对测试包中的代码进行更新以获取最新版本的测试包;
验证执行测试任务的测试环境,当确定测试环境满足测试条件时,根据所述最新版本的测试包执行测试任务。
本发明第二方面提供一种自动化测试任务管理装置,所述自动化测试任务管理装置包括:
测试包获取模块,获取即将执行的测试任务,并根据所述测试任务获取其对应的测试包;
测试包更新模块,根据系统中新增的代码对测试包中的代码进行更新以获取最新版本的测试包;
测试环境验证模块,验证执行测试任务的测试环境,当确定所述测试环境满足测试条件时,根据所述最新版本的测试包执行测试任务。
本发明第三方面提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明第一方面所述方法的步骤。
本发明第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如本发明第一方面所述方法的步骤。
本发明实施例提供一种自动化测试任务管理方法、装置、设备及存储介质,根据获取的测试任务获取相应的测试包,根据系统中新增的代码对测试包中的代码进行更新以获取最新测试包,验证执行测试任务的测试环境,当测试环境满足测试条件时,根据最新测试包执行测试任务,避免测试包版本不对以及测试环境被改变带来的测试不准确的问题,提高了测试效率,合理有效的安排了测试机的使用,节约了人力资源。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一种实施例提供的一种测试任务自动化管理方法的流程图;
图2是本发明一种实施例提供的一种测试任务自动化管理方法中的步骤S20的一种实施方式提供的具体流程图;
图3是本发明一种实施例提供的一种测试任务自动化管理方法中的步骤S30的一种实施方式提供的具体流程图;
图4是本发明一种实施例提供的一种测试任务自动化管理方法中的步骤S30的另一种实施方式提供的具体流程图;
图5是本发明另一种实施例提供的一种测试任务自动化管理装置的结构示意图;
图6是本发明另一种实施例提供的一种测试任务自动化管理装置中的测试包更新模块的一种实施方式提供的具体结构示意图;
图7是本发明另一种实施例提供的终端设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为了说明本发明的技术方案,下面通过具体实施例来进行说明。
本发明实施例提供一种自动化测试任务管理方法,如图1所示,该自动化测试任务管理方法包括步骤S10、步骤S20以及步骤S30,每个步骤的具体内容如下:
步骤S10.获取即将执行的测试任务,并根据测试任务获取其对应的测试包。
在步骤S10中,测试机在执行测试任务时可以根据用户的指令进行测试,也可以根据时间顺序执行测试,例如,测试机目前处于使用状态,待测试机执行完当前测试后即执行下一个测试,在执行每个测试任务前,通过测试任务获取测试任务的环境信息和测试包,可以通过读取测试任务的配置文件进行获取。
步骤S20.根据系统中新增的代码对测试包中的代码进行更新以获取最新版本的测试包。
在步骤S20中,对于测试包的更新,可以通过检测系统中是否新增代码进行检测,检测是否新增代码通常通过检测软件包的更新状态以及是否增加可人工写入的代码获得。例如,利用带有补丁包版本号的补丁包对相应的软件包进行更新,就可以根据补丁包版本号筛选出已更新的软件包,还可以是人工修改软件包后记录下来的代码,对测试包进行更新。
作为一种实施方式,如图2所示,步骤S20具体包括步骤S201、步骤S202以及步骤S203,每个步骤的具体内容如下:
步骤S201.当检查到代码服务器写入代码或者下载新的补丁包时,获取所写入或者新的补丁包中的代码。
步骤S202.根据所获取的代码重新编译测试包。
在步骤S202中,当检测到用户对测试包进行更新时,例如具有新的补丁包时,根据补丁包对测试包重新编译,以对测试包进行更新。
步骤S203.确定重新编译的测试包为最新版本的测试包。
在步骤S203中,通过对测试包进行重新编译后,获取最新版本的测试包,采用该最新版本的测试包进行测试。
本步骤中是对测试包进行更新,更新途径包括下载补丁包和合入代码服务器上的代码,避免了因测试包版本不对导致的测试失败。
步骤S30.验证执行测试任务的测试环境,当测试环境满足测试条件时,根据最新版本的测试包执行测试任务。
在步骤S30中,当测试环境和测试包验证通过后,根据最新测试包执行测试任务。在执行测试过程中有发送功能。例如,当测试出错时,给用户发送警报信息。当测试完成时,发送测试结果给用户。
本发明实施例提供一种自动化测试任务管理方法,根据获取的测试任务获取相应的测试包,根据系统中新增的代码对测试包中的代码进行更新以获取最新测试包,验证执行测试任务的测试环境,当测试环境满足测试条件时,根据最新测试包执行测试任务。避免测试代码版本不对的问题,尽早发现环境问题提高效率,合理地安排测试机的使用。
对于上述实施例中的步骤S30,作为一种实施方式,如图3所示,当测试环境和测试包验证通过后,根据最新测试包执行测试任务,包括:
步骤S301.验证执行测试任务的硬件设备、网络状态以及软件版本是否满足测试条件,是,则执行步骤S303,否,则执行步骤S302,
在步骤S301中,测试环境验证可以是基本的验证,例如,测试机是否空闲,CPU使用状态、内存使用状态、磁盘空间状态、网络状况,软件版本也可以作为基本验证点。除了基本验证,还可以调用,测试包中的验证脚本,对测试包需要的前置条件进行验证。例如,要执行一个包含登录的测试包,可以验证一下用来登录的用户是否存在。
步骤S302.发出报警信息时获取所述报警信息所对应的级别代码,根据级别代码获取处理优先级,并根据所述处理优先级转入相应级别代码下的自动响应处理流程,并返回执行步骤S301。
在步骤S302中,报警信息是指根据出现的异常对应的报警信号信息,即根据该报警信号信息可以明确得知出现的异常为何种异常,具体可以通过级别代码了解该报警信息的内容,根据级别代码获取处理优先级是指根据级别代码获取优先级标志代码,根据该标志代码优先处理级别较高的优先级,自动响应处理流程是指根据级别代码可以获取发生异常的具体问题,针对该具体问题执行的处理方案,执行处理方案后再返回步骤S301重新进行检测。
步骤S303.验证测试包,判定即将执行的测试任务对应的测试包与正在执行的测试任务对应的测试包是否存在冲突,是则执行步骤S304,否则执行步骤S305。
在步骤S303中,测试包冲突是指将要执行的测试包有一些步骤可能和现在正在执行的测试包的步骤有影响,会导致正在执行的测试包出错或执行失败或对其验证结果产生干扰。
步骤S304,管理冲突的测试包,并返回执行步骤S303。
在步骤S304中,对冲突的管理是由测试脚本管理系统来管理的。例如,测试包可以通过脚本管理系统来增加、修改或删除排斥的测试包。
步骤S305.验证通过后,根据最新版本的测试包执行任务。
本实施方式对测试环境、测试包进行验证,能够避免因为外部因素和测试包本身因素导致的测试失败。
对于上述实施例中的步骤S30,作为另一种实施方式,如图4所示,根据所述最新测试包执行测试任务,之后还包括:
步骤S3021.在测试机上执行测试任务时,根据测试任务的执行状态为所述测试机设置操作完成标志,其中,当执行完成测试任务时,将操作完成标志置1,当未完成测试任务时,将操作完成标志置0。
步骤S3022.当优先级别高于当前测试任务的高优先级别测试任务访问测试机时,查询所述测试机操作完成标志是否被置1,如果是,则执行步骤S3023,如果否,则执行步骤S3024。
在步骤S3022中,在执行测试任务时,每个测试任务均对应优先级别,可以通过查表的方式查询测试任务的优先级别,当高优先级别的测试任务访问时,通过查询操作完成标志判断测试机是否正在执行任务,如果正在执行任务,则中断当前任务,执行高级别测试任务。
步骤S3023.访问测试机,执行高级别测试任务并将操作完成标志清0。
在步骤S3023中,当操作完成标志被置1时,说明测试机正处于空闲状态,测试可以直接执行新的测试任务,并且在执行测试任务时,将操作完成标志清0,说明此时正处于执行测试任务状态。
步骤S3024.打断当前测试任务并访问测试机,并将访问冲突标志置1。
在步骤S3024中,对当前测试任务进行中断后,执行新的高优先级测试任务时,将访问冲突标志置1,访问冲突标志置1是指正在执行测试任务,不再接收中断指令,由于已经中断一次测试任务,为避免等待任务过多,将访问冲突标志置1,执行完成当前测试任务再执行其他测试任务。
步骤S3025.当所述高优先级别测试任务完成时,继续执行中断的测试任务,并将所述访问冲突标志置0。
在步骤S3025中,将所述访问冲突标志置0是指可以进行中断,即在执行该测试任务时仍然可以继续被中断。
本实施方式是对测试包存在冲突时的一种具体的冲突管理,在测试机上执行测试时,为测试机设置访问冲突标志,当低优先级任务访问测试机,并循环查询测试机操作完成标志是否被置1时,中断服务例程或高优先级任务打断低优先级任务并访问测试机,在查询到测试机操作完成标志被置1后,将其清0,并将访问冲突标志置1,随着中断返回或任务重新调度,低优先级任务继续执行,会检测到测试机操作完成标志为0,但访问冲突标志为1,则退出循环查询,重试访问测试机。通过这种管理,可有效避免测试包冲突导致的测试失败。
对于上述实施例中的步骤S30,作为另一种实施方式,当测试环境和测试包的最新版本验证通过后,根据最新测试包执行测试任务,在执行测试过程中发生测试出错时向用户进行报警,可以对测试包中的代码进行测试获取有问题的代码,并在对用户报警中将有问题的代码进行标识,使用户可以快速修改有问题的代码,具体测试过程如下:
将当前版本与最近一次运行成功版本的代码进行对比;具体的,针对某个运行失败的测试脚本,测试脚本中的代码主要是一些类方法的代码,方法之间存在树型的层次调用关系,所有方法可形成一棵方法调用关系树,在测试脚本的运行过程中,每次运行到要进入一个方法前,输出标志将这个方法与其他方法的调用关系进行记录,通过该方式,就记录下了测试脚本中所有方法之间的调用关系,最终形成方法调用层次,根据方法调用的层次关系对文件中的方法进行对比,例如,有三个记录了当前版本类方法代码的文件,分别是文件A1、文件B1、文件C1,此时还需要得到这三个文件在最近一次运行成功的版本代码,如文件A2、文件B2、文件C2,然后根据每个文件中的层次关系将A1与A2、B1与B2、C1与C2进行两两对比,找出两个版本中的代码是否有变更。将对比发现的变化代码进行标记,并将标记的代码定位为运行失败的原因。
进一步的,将上述经过标记后的代码形成代码集,由于上述方法对变化的代码进行标记的地方可能有多处,通过依次减少代码集中的标记的代码对代码集进行重复测试,设置从代码集中移除一处标记的代码,对剩下的代码进行测试,如果通过测试则对移除的代码进行标识,如果没有通过,则再移除下一处标记的代码,直至代码集中剩余的代码通过测试,例如,测试1)移除代码集中的第一处标记的代码,通过测试则标识该第一处标记的代码,未通过则进入测试2)移除代码集中的第二处标记的代码,通过测试则标识该第二处标记的代码,依次类推直至代码集中剩余的代码通过测试。
通过对代码集中标记的变化的代码分别进行移除,可以准确标记代码集中有问题的代码。
本发明另一种实施例提供一种测试任务自动化管理装置40,如图5所示,测试任务自动化管理装置40包括:
测试包获取模块401,获取即将执行的测试任务,并根据所述测试任务获取其对应的测试包;
测试包更新模块402,根据系统中新增的代码对测试包中的代码进行更新以获取最新版本的测试包;
测试环境验证模块403,验证执行测试任务的测试环境,当测试环境满足测试条件时,根据最新版本的测试包执行测试任务。
进一步的,如图6所示,作为一种实施方式,测试包更新模块402包括:
代码获取模块410,当检查到代码服务器写入代码或者下载新的补丁包时,获取所写入或者新的补丁包中的代码;
代码编译模块420,根据所获取的代码重新编译测试包;
测试包确认模块430,确定重新编译的测试包为最新测试包。
所测试环境验证模块401验证执行所述测试任务的测试环境,确定所述测试环境满足测试条件,包括:
验证执行所述测试任务的硬件设备、网络状态以及软件版本满足测试条件时,确定所述测试环境满足测试条件;
或者,验证执行所述测试任务的硬件设备、网络状态以及软件版本满足测试条件时,并判定即将执行的测试任务对应的测试包与正在执行的测试任务对应的测试包不存在冲突时,确定所述测试环境满足测试条件。
上述终端设备中模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本发明另一种实施例提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的自动化测试任务管理方法,为避免重复,这里不再赘述。或者,该计算机程序被处理器执行时实现上述实施例中测试任务自动化管理装置中各模块/单元的功能,为避免重复,这里不再赘述。
图7是本实施例中终端设备的示意图。如图7所示,终端设备6包括处理器60、存储器61以及存储在存储器61中并可在处理器60上运行的计算机程序62。处理器60执行计算机程序62时实现上述实施例中测试任务自动化管理方法的各个步骤,例如图1所示的步骤S10、S20和S30。或者,处理器60执行计算机程序62时实现上述实施例中自动化测试任务管理装置各模块/单元的功能,如图6所示测试包获取模块401、测试包更新模块402、测试环境验证模块403的功能。
示例性的,计算机程序62可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器61中,并由处理器60执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序62在终端设备6中的执行过程。例如,计算机程序62可以被分割成同步模块、汇总模块、获取模块、返回模块(虚拟装置中的模块)。
该终端设备6可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图7仅仅是终端设备6的示例,并不构成对终端设备6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如终端设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器61可以是终端设备6的内部存储单元,例如终端设备6的硬盘或内存。存储器61也可以是终端设备6的外部存储设备,例如终端设备6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器61还可以既包括终端设备6的内部存储单元也包括外部存储设备。存储器61用于存储计算机程序以及终端设备所需的其他程序和数据。存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种测试任务自动化管理方法,其特征在于,所述测试任务自动化管理方法包括:
获取即将执行的测试任务,根据所述测试任务的配置文件获取环境信息和测试包;
根据系统中新增的代码对所述测试包中的代码进行更新以获取最新版本的测试包;
验证执行所述测试任务的测试环境,当确定所述测试环境满足测试条件时,根据所述最新版本的测试包执行所述测试任务;
当测试过程中发生测试出错时进行报警,以使用户获知有问题的代码,所述测试过程包括:
将当前版本与最近一次运行成功版本的代码进行对比,将对比发现的变化代码进行标记;
将经过标记后的代码形成代码集,通过依次减少所述代码集中标记的代码对所述代码集进行重复测试,设置从所述代码集中移除一处标记的代码,并对剩下的代码进行测试;
若通过测试则对移除的代码进行标识,若没有通过测试则再移除下一处所述标记的代码,直至所述代码集中剩余的代码通过测试。
2.如权利要求1所述的测试任务自动化管理方法,其特征在于,根据系统中新增的代码对所述测试包中的代码进行更新以获取最新版本的测试包,包括:
当检查到代码服务器写入代码或者下载新的补丁包时,获取所写入或者新的补丁包中的代码;
根据所获取的代码重新编译测试包;
确定重新编译的测试包为最新版本的测试包。
3.如权利要求1所述的测试任务自动化管理方法,其特征在于,所述测试环境包括测试任务的硬件设备、网络状态以及软件版本;
所述验证执行所述测试任务的测试环境,当确定所述测试环境满足测试条件时,根据所述最新版本的测试包执行所述测试任务,包括:
验证执行所述测试任务的硬件设备、网络状态以及软件版本;
当所述硬件设备、网络状态以及软件版本满足测试条件时,根据所述最新版本的测试包执行所述测试任务。
4.如权利要求1所述的测试任务自动化管理方法,其特征在于,所述测试环境包括测试任务的硬件设备、网络状态以及软件版本;
验证执行所述测试任务的测试环境,当所述测试环境满足测试条件时,根据所述最新版本的测试包执行所述测试任务,包括:
验证执行所述测试任务的硬件设备、网络状态以及软件版本满足测试条件时,并判定即将执行的测试任务对应的测试包与正在执行的测试任务对应的测试包不存在冲突时,确定所述测试环境满足测试条件。
5.如权利要求1所述的测试任务自动化管理方法,其特征在于,根据所述最新测试包执行所述测试任务,之后还包括:
在测试机上执行测试任务时,根据测试任务的执行状态为所述测试机设置操作完成标志,其中,当执行完成测试任务时,将操作完成标志置1,当未完成测试任务时,将操作完成标志置0;
当优先级别高于当前测试任务的高优先级别测试任务访问测试机时,查询所述测试机操作完成标志是否被置1;
如果操作完成标志被置1,则访问测试机,并将操作完成标志清0;
如果操作完成标志被置0,则打断当前测试任务并访问测试机,并将访问冲突标志置1;
当所述高优先级别测试任务完成时,继续执行中断的测试任务,并将所述访问冲突标志置0。
6.一种测试任务自动化管理装置,其特征在于,所述自动化测试任务管理装置包括:
测试包获取模块,获取即将执行的测试任务,根据所述测试任务的配置文件获取环境信息和测试包;
测试包更新模块,根据系统中新增的代码对所述测试包中的代码进行更新以获取最新版本的测试包;
测试环境验证模块,验证执行所述测试任务的测试环境,当确定所述测试环境满足测试条件时,根据所述最新版本的测试包执行所述测试任务;
报警模块,用于当测试过程中发生测试出错时进行报警,以使用户获知有问题的代码,所述测试过程包括:
将当前版本与最近一次运行成功版本的代码进行对比,将对比发现的变化代码进行标记;
将经过标记后的代码形成代码集,通过依次减少所述代码集中标记的代码对所述代码集进行重复测试,设置从所述代码集中移除一处标记的代码,并对剩下的代码进行测试;
若通过测试则对移除的代码进行标识,若没有通过测试则再移除下一处所述标记的代码,直至所述代码集中剩余的代码通过测试。
7.如权利要求6所述的测试任务自动化管理装置,其特征在于,所述测试包更新模块包括:
代码获取单元,当检查到代码服务器写入代码或者下载新的补丁包时,获取所写入或者新的补丁包中的代码;
代码编译单元,根据所获取的代码重新编译测试包;
测试包确认单元,确定重新编译的测试包为最新测试包。
8.如权利要求6所述的测试任务自动化管理装置,其特征在于,所述测试环境包括测试任务的硬件设备、网络状态以及软件版本;
所测试环境验证模块,验证执行所述测试任务的测试环境,确定所述测试环境满足测试条件时,根据所述最新版本的测试包执行所述测试任务,包括:
验证执行所述测试任务的硬件设备、网络状态以及软件版本满足测试条件时,确定所述测试环境满足测试条件;
或者,验证执行所述测试任务的硬件设备、网络状态以及软件版本满足测试条件时,并判定即将执行的测试任务对应的测试包与正在执行的测试任务对应的测试包不存在冲突时,确定所述测试环境满足测试条件。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710857314.7A CN107766236B (zh) | 2017-09-21 | 2017-09-21 | 测试任务自动化管理方法、装置、设备及存储介质 |
PCT/CN2017/107945 WO2019056475A1 (zh) | 2017-09-21 | 2017-10-27 | 测试任务自动化管理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710857314.7A CN107766236B (zh) | 2017-09-21 | 2017-09-21 | 测试任务自动化管理方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107766236A CN107766236A (zh) | 2018-03-06 |
CN107766236B true CN107766236B (zh) | 2021-03-02 |
Family
ID=61266298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710857314.7A Active CN107766236B (zh) | 2017-09-21 | 2017-09-21 | 测试任务自动化管理方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107766236B (zh) |
WO (1) | WO2019056475A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108845937A (zh) * | 2018-06-01 | 2018-11-20 | 平安普惠企业管理有限公司 | 测试环境监控方法、装置、计算机设备和存储介质 |
CN109254914A (zh) * | 2018-08-15 | 2019-01-22 | 中国平安人寿保险股份有限公司 | 软件开发包测试方法、系统、计算机装置及可读存储介质 |
CN109446056B (zh) * | 2018-09-11 | 2023-03-21 | 平安科技(深圳)有限公司 | 代码验证方法、装置、电子设备及介质 |
CN109062815B (zh) * | 2018-10-11 | 2022-11-18 | 郑州云海信息技术有限公司 | 生成虚拟化软件的升级/补丁包的测试包的方法及系统 |
CN112564971B (zh) * | 2020-12-07 | 2022-02-22 | 广州芯德通信科技股份有限公司 | 基于tr069协议的自动化批量管理CPE方法 |
CN112612695B (zh) * | 2020-12-17 | 2023-09-15 | 广东数远科技有限公司 | 基于rpa的功能测试环境验证方法、装置、设备及介质 |
CN113010417A (zh) * | 2021-03-02 | 2021-06-22 | 中国工商银行股份有限公司 | 基于自动化测试的脚本执行方法及装置 |
CN114067985A (zh) * | 2021-09-15 | 2022-02-18 | 武汉联影医疗科技有限公司 | 医疗设备的测试提单方法、计算机设备和存储介质 |
CN113933627B (zh) * | 2021-10-08 | 2024-07-26 | 网易有道(杭州)智能科技有限公司 | 用于自动测试验证电子产品的方法及其相关产品 |
CN113626344B (zh) * | 2021-10-12 | 2022-02-08 | 广州嘉为科技有限公司 | 一种软件自动化测试的调度方法及系统 |
CN115220415B (zh) * | 2021-11-26 | 2023-09-15 | 广州汽车集团股份有限公司 | 车载控制器测试方法、系统、测试管理平台和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101042673A (zh) * | 2007-04-20 | 2007-09-26 | 北京航空航天大学 | 软件测试系统及测试方法 |
CN102799515A (zh) * | 2011-05-24 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 应用程序测试方法及装置 |
CN103246604A (zh) * | 2013-03-29 | 2013-08-14 | 北京京东尚科信息技术有限公司 | 软件测试的系统和方法以及控制装置与执行装置 |
CN104601403A (zh) * | 2015-01-07 | 2015-05-06 | 上海瀚之友信息技术服务有限公司 | 一种自动化测试系统 |
CN106326100A (zh) * | 2015-06-30 | 2017-01-11 | 中兴通讯股份有限公司 | 一种软件自动化测试方法及装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103077111B (zh) * | 2011-10-26 | 2016-02-10 | 阿里巴巴集团控股有限公司 | 一种持续集成失败用例的定位方法及系统 |
CN103220163B (zh) * | 2012-01-19 | 2017-03-01 | 阿里巴巴集团控股有限公司 | 配置信息的更新方法和系统 |
CN103678097A (zh) * | 2012-09-05 | 2014-03-26 | 百度在线网络技术(北京)有限公司 | 一种选择回归测试用例的方法和装置 |
US20140245264A1 (en) * | 2013-02-28 | 2014-08-28 | International Business Machines Corporation | Identifying Test Cases Based on Changed Test Code |
US10031841B2 (en) * | 2013-06-26 | 2018-07-24 | Sap Se | Method and system for incrementally updating a test suite utilizing run-time application executions |
CN105095089A (zh) * | 2015-09-14 | 2015-11-25 | 北京金山安全软件有限公司 | 一种测试应用软件性能的方法及装置 |
CN105183657A (zh) * | 2015-09-30 | 2015-12-23 | 上海斐讯数据通信技术有限公司 | 一种web界面的测试系统及方法 |
CN106407124B (zh) * | 2016-11-10 | 2019-03-12 | 中国工商银行股份有限公司 | 一种程序自动化测试方法及系统 |
CN106775911A (zh) * | 2016-11-25 | 2017-05-31 | 努比亚技术有限公司 | 一种用于应用开发的测试方法及装置 |
CN106681924B (zh) * | 2016-12-30 | 2019-12-03 | 深圳市麦游互动科技有限公司 | 一种软件测试方法及系统 |
-
2017
- 2017-09-21 CN CN201710857314.7A patent/CN107766236B/zh active Active
- 2017-10-27 WO PCT/CN2017/107945 patent/WO2019056475A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101042673A (zh) * | 2007-04-20 | 2007-09-26 | 北京航空航天大学 | 软件测试系统及测试方法 |
CN102799515A (zh) * | 2011-05-24 | 2012-11-28 | 腾讯科技(深圳)有限公司 | 应用程序测试方法及装置 |
CN103246604A (zh) * | 2013-03-29 | 2013-08-14 | 北京京东尚科信息技术有限公司 | 软件测试的系统和方法以及控制装置与执行装置 |
CN104601403A (zh) * | 2015-01-07 | 2015-05-06 | 上海瀚之友信息技术服务有限公司 | 一种自动化测试系统 |
CN106326100A (zh) * | 2015-06-30 | 2017-01-11 | 中兴通讯股份有限公司 | 一种软件自动化测试方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2019056475A1 (zh) | 2019-03-28 |
CN107766236A (zh) | 2018-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107766236B (zh) | 测试任务自动化管理方法、装置、设备及存储介质 | |
CN108459962B (zh) | 代码规范性检测方法、装置、终端设备及存储介质 | |
US8250543B2 (en) | Software tracing | |
JP5933762B2 (ja) | コード網羅率決定方法およびシステム | |
CN107621963B (zh) | 一种软件部署方法、软件部署系统及电子设备 | |
US10824541B1 (en) | System and method for test data fabrication | |
CN108664394B (zh) | 一种内存泄露过程追溯方法及装置 | |
CN110209520B (zh) | 一种提高ssd测试效率的方法、装置、计算机设备及存储介质 | |
CN109634648B (zh) | 一种快速切换sdk网络接口环境的方法及装置 | |
US7765434B2 (en) | Resource efficient software tracing for problem diagnosis | |
CN111563032A (zh) | App调试方法、装置、计算机设备及存储介质 | |
CN111104157A (zh) | 一种存储设备量产方法、装置、存储介质及电子设备 | |
CN108829575B (zh) | 测试案例推荐方法、电子装置及可读存储介质 | |
CN110990289B (zh) | 一种自动提交bug的方法、装置、电子设备及存储介质 | |
CN112445490A (zh) | 文件序列处理方法、装置、终端设备及存储介质 | |
CN115391228A (zh) | 精准测试方法、装置、设备及介质 | |
CN109558315B (zh) | 测试范围的确定方法、装置及设备 | |
CN110889116A (zh) | 一种广告拦截方法、装置及电子设备 | |
CN110688173A (zh) | 一种跨平台界面框架中组件的定位方法、装置及电子设备 | |
US20150331772A1 (en) | Methods for updating diagnostic tools on a hardware device and devices thereof | |
CN107678917B (zh) | 测试机自动化管理方法、装置、设备及存储介质 | |
CN113031995B (zh) | 一种更新规则的方法、装置、存储介质以及电子设备 | |
CN110442370B (zh) | 一种测试用例查询方法及装置 | |
CN115545677B (zh) | 基于自动化用例执行情况的上线流程规范检测方法和系统 | |
CN108665938B (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 |