一种面向敏捷的自动化测试管理系统和方法

xiaoxiao2021-3-1  187

一种面向敏捷的自动化测试管理系统和方法
【技术领域】
[0001]本发明实施例涉及软件测试技术领域,尤其涉及一种面向敏捷的自动化测试管理系统和方法。
【背景技术】
[0002]敏捷开发过程中,与传统过程相比,版本发布更加频繁,而对于测试人员来说,必须对每次的发布快速的进行测试,才能快速反馈产品质量状况。在这种情况下,测试周期随着开发周期的缩短而相应的被缩短,测试频率也随之增加,因此,单凭手动测试不能满足测试的需求,需要引入面向不同测试类型的自动化测试,同时在各个环节都有一定自动化测试支持,管理起来十分不便,执行手段也缺乏灵活性。
[0003]目前没有专门针对自动化测试进行管理和执行的统一的工具,特别是面向敏捷开发方面,使得面向敏捷的自动化测试的测试执行效率较低。

【发明内容】

[0004]本发明提供一种面向敏捷的自动化测试管理系统和方法,以提高面向敏捷的自动化测试的测试执行效率。
[0005]—方面,本发明实施例提供了一种面向敏捷的自动化测试管理系统,包括:
[0006]测试管理前端,用于创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端;
[0007]测试控制端,用于依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端;
[0008]所述测试执行端,用于获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。
[0009]另一方面,本发明实施例提供了一种面向敏捷的自动化测试管理方法,包括:
[0010]测试管理前端创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端;
[0011]测试控制端依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端;
[0012]所述测试执行端获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。
[0013]本发明实施例提供的技术方案,通过测试管理前端创建、管理测试任务,并向测试控制端发送测试任务的提交指令,测试控制端依据接收的提交指令将测试任务分配给测试执行端,测试执行端执行分配到的测试任务,即,提供了一个适合敏捷开发模式的自动化测试管理平台,通过该平台有效的、灵活的对项目实施过程中运用的自动化测试进行管理,从而达到提高测试执行效率,保证软件质量和发布周期的效果。
【附图说明】
[0014]图la是本发明实施例一中的一种面向敏捷的自动化测试管理系统的结构示意图;
[0015]图lb是本发明实施例一中的面向敏捷的自动化测试管理系统的工作原理示意图;
[0016]图2a是本发明实施例二中的一种面向敏捷的自动化测试管理系统的结构示意图;
[0017]图2b是本发明实施例二中的测试管理前端的结构示意图;
[0018]图2c是本发明实施例二中的任务结构的示意图;
[0019]图2d是本发明实施例二中的面向敏捷的自动化测试管理系统的工作流程示意图;
[0020]图3是本发明实施例三中的一种面向敏捷的自动化测试管理方法的实现流程图。
【具体实施方式】
[0021]下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
[0022]实施例一
[0023]图la是本发明实施例一中的一种面向敏捷的自动化测试管理系统的结构示意图。如图la所示,该自动化测试管理系统具体可以包括:测试管理前端,用于创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端;测试控制端,用于依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端;所述测试执行端,用于获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。
[0024]在本实施例中,测试管理前端提供基本信息管理、自动化测试管理、测试资源管理的用户图形操作界面。具体的,用户在测试管理前端创建、管理测试任务,为测试任务分配测试执行端,并提交测试任务。在用户提交测试任务后,测试管理前端向测试控制端发送测试任务的提交指令,所述提交指令包含用户为测试任务分配的测试执行端。
[0025]测试控制端和测试执行端同属于后端。其中测试控制端用于接收测试任务、分发测试任务、获取测试执行端信息、收集测试结果,并通过测试管理前端的APKApplicat1nProgramming Interface,应用程序编程接口)接口更新测试任务的执行状态、测试执行端信息。测试执行端主要接收测试控制端发送的命令,执行命令,并将命令的输出信息返回给测试控制端。
[0026]图lb是本发明实施例一中的面向敏捷的自动化测试管理系统的工作原理示意图。如图lb所示,测试管理前端和各测试执行端通过测试控制端通信连接,测试管理前端向测试控制端发送测试任务的提交指令,测试控制端依据提交指令中包含的测试任务关联的测试执行端,将测试任务的数据发送给测试执行端,测试执行端执行测试,并将测试过程的输出信息通过测试控制端返回给测试管理前端。
[0027]本发明实施例提供的技术方案,提供了一种轻量级的面向敏捷开发的自动化测试管理系统,主要对敏捷开发过程中的自动化测试进行管理、调度执行,同时监控、管理测试资源,并测试结果进行统计,通过该系统有效的、灵活的对项目实施过程中运用的自动化测试进行管理,达到了提高测试执行效率,保证软件质量和发布周期的效果。
[0028]示例性的,测试控制端可以包括:信息获取模块,用于从测试执行端获取所述测试任务的执行信息,所述执行信息包括测试状态、执行日志、测试任务结果和测试执行端的状态信息中的至少一个;信息返回模块,用于依据测试任务的执行信息,通过应用程序编程接口向所述测试管理前端返回测试任务结果和测试状态。
[0029]在本实施例中,测试控制端的主要功能是接收测试任务、测试任务分发、收集测试任务的执行结果和收集测试执行端的状态信息。具体的,测试控制端,将从测试管理前端接收的测试任务发送到指定的测试执行端,由测试执行端执行测试并将执行结果返回给测试控制端。
[0030]需要说明的是,测试控制端按照测试管理前端用户定义的条件触发指定的测试任务。测试控制端同时管理所有测试执行端,测试控制端与测试执行端通信,通过与每个测试执行端建立 一个连接,在该连接为测试执行端分配任务,接收任务的执行结果。
[0031 ]在本实施例中,测试执行端用于执行测试任务,将测试状态、执行日志、测试任务结果发送给测试控制端。测试执行端还需要定时向测试控制端发送状态信息,状态信息包含心跳信息与机器信息,即,定时向测试控制端发送测试控制端的CPU( CentralProcessing Unit,中央处理器)、内存、磁盘、网络利用率等信息。
[0032]示例性的,所述测试执行端确定分配到的测试任务的类型,依据确定的测试任务的类型,调用预先创建的测试任务插件来执行分配到的测试任务,其中测试任务的类型包括单元测试任务、功能测试任务和持续集成任务,测试插件包括单元测试插件、功能测试插件和持续集成插件。
[0033]示例性的,所述自动化测试管理系统还包括:版本控制服务器,用于依据用户操作,控制所述测试任务的测试脚本的版本。其中,版本控制服务器存储有不同版本的产品,以及不同版本的测试脚本,用于对产品、测试脚本进行版本控制。
[0034]在上述实施例的基础上,测试控制端还包括:版本监控模块,用于监控版本控制服务器中的产品版本是否更新,并根据监控结果触发测试任务。
[0035]为了提高测试效率,所述测试任务包括至少一个测试阶段,所述测试阶段包括至少一个子任务,所述测试管理前端,具体用于向测试控制端发送子任务的提交指令。具体的,在测试管理前端创建测试任务时,可以将一个测试任务分成不同的测试阶段,按照执行顺序对测试阶段排序,在排序在前的测试阶段测试完成后,才继续执行排序在后的测试阶段;在排序在前的测试阶段测试测试中断时,不执行排序在后的测试阶段。
[0036]进一步地,也可以将一个测试阶段分成不同的子任务,可以对每个子任务单独进行测试,子任务的类型可以包括单元测试任务、功能测试任务和持续集成任务,相应的,所述测试管理前端向测试控制端发送子任务的提交指令。
[0037]示例性的,所述测试执行端的任务执行方式包括串行、并行和分布式中的任一种。同一个测试任务的不同测试阶段之间是串行执行,测试子任务之间是并行执行和/或分布式执行的。
[0038]实施例二
[0039]图2a是本发明实施例二中的一种面向敏捷的自动化测试管理系统的结构示意图。如图2a所示,该自动化测试管理系统具体可以包括:测试管理前端,用于创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端;测试控制端,用于依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端;所述测试执行端,用于获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。
[0040]图2b是本发明实施例二中的测试管理前端的结构示意图。结合图2a和图2b,测试管理前端主要包括如下功能:
[0041]1)自动化测试管理:项目人员登录并选择自己的相关产品后,可以根据自己的角色进行相关的权限的测试管理操作。其中,测试管理操作主要包括用例管理、任务管理、机器管理、任务结果管理等,同时项目负责人还可以进行项目管理,为产品分配人员。
[0042]2)提交测试请求:自动化测试人员以及产品管理人员登录系统后,可以通过系统定义测试任务,在定义测试任务时需要选择相应的测试执行端,同时可以设置任务结果通知人。任务定义完毕并提交任务请求后,测试管理前端会将测试任务的提交指令(即任务请求)发送给测试控制端,由测试控制端分发给测试执行端。
[0043]3)基本信息管理:主要提供给系统管理员提供服务,其可以通过测试管理前端进行相关的管理活动,如进行用户管理和产品管理等。
[0044]任务管理模块是测试管理前端的核心模块。图2c是本发明实施例二中的任务结构的示意图。如图2c所示,测试任务是一个任务逻辑组合单元,测试任务包含基本信息,用于定义测试任务的名称、所属项目、测试结果通知人,以及触发方式等信息。
[0045]测试任务包括一个或若干个测试阶段,测试阶段之间的运行逻辑是串行的线性关系。测试阶段可包含一个或若干个子任务,在同一个测试阶段里的子任务运行关系可以定义为串行或并行,只有在全部子任务命令运行结束之后,本测试阶段才运行结束。
[0046]子任务是具体的测试执行用例集合或者命令集合,可以在子任务中设置任务执行方式和测试执行端。其中子任务的测试命令是一个可执行单元,它包括测试执行端信息及需要运行可执行命令(Shell/Batch),这些可执行命令是Linux系统或Windows系统上的任何可执行程序,他们以可扩展插件的形式,通过设置参数来运行单元测试和持续集成的测试任务。子任务包括三种模式:单元测试类型、持续集成类型和功能测试类型。
[0047]在测试管理前端创建测试任务时可以定义测试任务的触发方式,触发方式主要可以包括:手动运行,在任务创建完毕以后,直接手动触发测试任务;版本控制服务器触发,在测试控制端监测到指定版本控制服务器路径内存储的产品版本有变更时,会自动触发测试任务;定时触发,在指定的任务执行时间点自动触发测试任务;API触发,可以通过HTTP(HyperText Transfer Protocol,超文本传输协议)API触发测试任务。
[0048]在测试管理前端中,测试用例管理用于管理测试用例,主要功能包括添加用例、更新用例和删除用例等功能。在创建和更新用例时可以对测试用例指定用例指定所属项目、用例类型、代码地址、方法名等。根据不同的用例类型,测试任务执行时会获取该代码地址和函数名,将其传递给测试执行端。
[0049]在测试管理前端中,资源管理模块用于管理测试执行端。执行端在启动测试执行端程序后后会根据配置文件中的信息去连接测试控制端,当有新的测试执行端连接上测试控制端后,测试控制端会通知测试管理前端添加测试执行端,该测试执行端会在测试管理前端的执行端列表里显示出来。
[0050]在测试管理前端中,用户可以通过报表模块查看不同类型的子任务在指定时间阶段内的执行情况,可以同时指定同一类型的多个子任务,该模块会将任务的执行情况进行统计并分析,生成曲线趋势图展现给用户。用户还可以通过邮件方式将分析结果发送给相关人员。
[0051]在本实施例中,测试控制端接收测试管理前端发送的任务,按照测试管理前端定义的触发方式进行触发,并将触发后的任务发送到指定的测试执行端,并将获取任务执行结果。控制端服务器同时管理所有测试执行端,控制端服务器通过Socket(套接字)与测试执行端通信,通过与每个测试执行端建立一个TCP(Transmiss1n Control Protocol,传输控制协议)连接,在该连接上发送命令,接收命令执行结果。最终将任务状态向前端管理系统更新。
[0052]在本实施例中,测试执行端安装在测试执行机 中,用于执行测试任务。测试任务插件也安装在测试执行机上,测试执行端收到任务后,根据任务类型,启动任务执行插件来执行任务。与任务类型相应地,插件主要分为单元测试插件、功能测试插件和持续集成插件。
[0053]其中,单元测试任务插件,主要用于执行单元测试任务和覆盖率收集,可以从版本控制服务器中下载测试代码、运行测试代码、产生覆盖率数据等工作。支持的语言有gcc/g++构建的C/C++、Maven构建的Java项目、PHP unit构建的PHP、Python构建的Python、Test::Class 构建的Perl和shUnit2+shcov 构建的Shell。
[0054]单元测试任务插件在设计上主要包括:公共部分,包括版本控制服务器相关命令、命令执行、日志读写;处理各种语言单元测试部分,该部分包括一个基类和其他各个支持语言的处理部分。其中基类主要功能有环境准备、版本控制服务器校验、安装依赖包、执行用例、清理数据;其他各个支持语言的处理部分均继承基类;执行入口部分,为各种类型任务的执行入口,入口部分会根据命令行中的参数判断要执行的单元测试语言和构建类型,然后调用不同语言的处理部分执行测试命令。
[0055]该插件的执行单元测试以及收集覆盖率的过程包括:校验(checkout)项目代码;执行指定的命令,一般是编译项目、执行用例等命令;收集代码覆盖率信息,根据设置是可选的;覆盖率数据保存,包括保存至本地和服务器;数据清理。
[0056]本实施例提供的插件在设计上考虑了可扩展性,可以扩展其他类型语言的单元测试及覆盖率收集,扩展新语言时只需要自己实现覆盖率收集和保存,其他只需要继承插件基类即可。
[0057]其中,功能测试插件主要用于执行系统上创建的自动化测试用例,用户在创建测试子任务时使用用例模式,并为子任务选择平台中存在的测试用例。测试执行端通过命令行调用功能测试任务插件脚本来执行子任务中的测试用例,命令行语句中需要有指定工具、URL(Uniform Resoure Locator,统一资源定位器)、方法名和用例ID的参数。
[0058]插件运行时会现先根据配置文件中版本控制服务器的用户名、密码和命令行中指定版本控制服务器地址将测试代码校验到本地的工作目录中,在执行这些用例的测试代码时,插件会根据用例的测试框架或工具的属性来选择相应的启动和执行方式。功能测试插件支持的框架有Maven-Junit和Ant-Junit,支持的自动化测试工具有Selenium。
[0059]其中,持续集成任务插件主要用来执行持续集成类型的任务,可以从版本控制服务器中下载代码、编译代码、打包、部署、运行测试代码等工作。该插件会有一个配置文件,其中包括持续集成所需的信息,主要包括基本信息配置、单元测试配置、构建配置、部署配置和后续的功能测试配置。该插件根据提供的配置文件内容进行解析运行。
[ΟΟ?Ο]首先,持续集成类型的任务在前端创建时会定义一个config文件,config文件中包括要进行的任务的每个阶段的工作的配置,主要包括执行相应的单元测试、构建、部署和后续的功能测试阶段。同时在创建任务时也需要指定要执行的阶段。
[0061]该类型的任务插件主要包括的脚本文件按照阶段可分为入口脚本、单元测试脚本、构建脚本、部署脚本、功能测试脚本。
[0062]当执行端发送执行持续集成任务脚本命令后,插件执行步骤如下:从命令行语句中获取config文件的位置和指定的执行阶段;下载config文件到执行机的任务执行临时文件夹内,读取config文件;然后检查要运行的阶段,并设置运行阶段;创建运行目录;调用各个任务阶段执行脚本,执行任务阶段。
[0063]并且,插件的配置过程如下:首先需要在前端管理系统的配置中,指出插件的具体位置,然后在测试执行机器上安装并配置插件所需的具体的插件配置项,例如版本控制服务器校验的用户名、密码、测试执行目录等,但对于测试执行机来说,安装全部插件不是必须的,只需要安装该机器所需要的插件即可。
[0064]图2d是本发明实施例二中的面向敏捷的自动化测试管理系统的工作流程示意图。如图2b所示,该系统的工作流程如下:测试管理前端向测试控制端发送测试请求,并写入新的测试请求文件,测试控制端检测到新的测试请求文件时,接收任务请求,并将任务请求转发给测试管理前端预先为任务分配的测试执行端,测试执行端执行接收的测试任务,并将测试执行状态发送给测试控制端,测试控制端将测试状态信息写入测试状态文件,测试管理前端读取测试状态文件中存储的测试状态信息。
[0065]本实施例中提供的技术方案,定义了自动化测试任务的结构,保证了对多种任务执行方式的支持;提出多种自动化测试任务执行的触发方式,保证任务触发和执行的灵活性;同时能够监控版本控制服务器,支持持续集成和每日构建;同时通过不同的触发模式可以做持续集成后的自动化测试;通过执行测试插件,支持多种测试类型的测试任务的执行,同时支持常用的测试框架或工具;支持对测试执行资源的监控、分配和管理;实时的监控测试任务执行状况,收集和处理测试任务执行结果,生成曲线趋势图,支持对测试结果的收集和分析,并可以生成测试报表。
[0066]实施例三
[0067]图3是本发明实施例三中的一种面向敏捷的自动化测试管理方法的流程图,如图3所示,该方法可以包括如下步骤:
[0068]步骤301、测试管理前端创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端。
[0069]在本实施例中,测试管理前端提供基本信息管理、自动化测试管理、测试资源管理的用户图形操作界面。在创建测试任务时,可以将测试任务分成至少一个测试阶段,将测试阶段分成至少一个子任务,并为子任务指定测试执行端和触发方式。
[0070]步骤302、测试控制端依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端。
[0071]在本实施例中,测试控制端一直监控提交指令,例如监控测试管理前端指定的任务请求文件的存储路径中是否有新的任务请求文件,若有,则测试控制端读取并解析新的任务请求文件,并根据解析结果中任务种类,来做不同的处理。
[0072]具体的,在任务种类是开始执行测试时,获取任务关联的执行端信息,并执行如下操作:在关联的执行端存在,并处于可用状态,且待执行的不是定时任务时,将任务插入到任务执行列表中,并将任务信息打包发送给关联的执行端;在关联的执行端存在,并处于可用状态,且待执行的是定时任务时,将任务加入到定时任务列表中,在到达定时任务的指定时间时,将任务插入到任务执行列表中,并将任务信息打包发送给关联的执行端;在关联的执行端不存在或不可用时,向测试管理前端发送错误提示信息,要求前端更新任务状态,前端根据错误信息更新任务状态。在任务请求处理完毕后,测试控制端删除任务请求文件。< br>[0073]具体的,在任务种类是停止测试任务时,会确定关联的测试执行端是否存在,若存在,则通知指定的测试执行端停止测试任务,并在执行任务列表中将该测试任务删除;如果测试执行端不存在,则终止对该测试任务的处理。
[0074]步骤303、测试执行端获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。
[0075]测试执行端接收到任务后,会根据任务的类型指定不同的处理函数并进行处理。具体的,在任务的类型是开始执行测试时,获取任务命令信息,启动子进程来执行任务命令,子进程会根据测试任务的类型,启动相对应的任务执行插件来执行任务,同时在任务执行过程中,主进程会监控任务状态,并读取任务日志,实施发送给控制端服务器。在任务的类型是停止测试任务时,测试执行端通过进程ID找到对应的测试任务插件进程,并关闭进程。
[0076]示例性的,所述测试执行端调用预先创建的测试任务插件来执行分配到的测试任务,可以包括:测试执行端确定分配到的测试任务的类型;测试执行端依据确定的测试任务的类型,调用预先创建的测试任务插件来执行分配到的测试任务,其中测试任务的类型包括单元测试任务、功能测试任务和持续集成任务,测试插件包括单元测试插件、功能测试插件和持续集成插件。
[0077]示例性的,测试控制端依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端,可以包括:测试控制端从测试执行端获取所述测试任务的执行信息,所述执行信息包括测试状态、执行日志、测试任务结果和测试执行端的状态信息中的至少一个;测试控制端依据测试任务的执行信息,通过应用程序编程接口向所述测试管理前端返回测试任务结果和测试状态。
[0078]本实施例提供的面向敏捷的自动化测试管理方法,与本发明任意实施例所提供的面向敏捷的自动化测试管理系统属于同一发明构思,由本发明任意实施例所提供的面向敏捷的自动化测试管理系统执行。未在本实施例中详尽描述的技术细节,可参见本发明任意实施例提供的面向敏捷的自动化测试管理系统。
[0079]注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
【主权项】
1.一种面向敏捷的自动化测试管理系统,其特征在于,包括: 测试管理前端,用于创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端; 测试控制端,用于依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端; 所述测试执行端,用于获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。2.根据权利要求1所述的系统,其特征在于,所述测试执行端确定分配到的测试任务的类型,依据确定的测试任务的类型,调用预先创建的测试任务插件来执行分配到的测试任务,其中测试任务的类型包括单元测试任务、功能测试任务和持续集成任务,测试插件包括单元测试插件、功能测试插件和持续集成插件。3.根据权利要求1所述的系统,其特征在于,测试控制端包括: 信息获取模块,用于从测试执行端获取所述测试任务的执行信息,所述执行信息包括测试状态、执行日志、测试任务结果和测试执行端的状态信息中的至少一个; 信息返回模块,用于依据测试任务的执行信息,通过应用程序编程接口向所述测试管理前端返回测试任务结果和测试状态。4.根据权利要求1所述的系统,其特征在于,还包括: 版本控制服务器,用于依据用户操作,控制所述测试任务的测试脚本的版本。5.根据权利要求4所述的系统,其特征在于,测试控制端还包括: 版本监控模块,用于监控版本控制服务器中的产品版本是否更新,并根据监控结果触发测试任务。6.根据权利要求1所述的系统,其特征在于,所述测试执行端的任务执行方式包括串行、并行和分布式中的任一种。7.根据权利要求1所述的系统,其特征在于,所述测试任务包括至少一个测试阶段,所述测试阶段包括至少一个子任务, 所述测试管理前端,具体用于向测试控制端发送子任务的提交指令。8.一种面向敏捷的自动化测试管理方法,其特征在于,包括: 测试管理前端创建测试任务,并向测试控制端发送测试任务的提交指令,其中所述测试任务的提交指令包含为所述测试任务分配的测试执行端; 测试控制端依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端; 所述测试执行端获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过所述测试控制端返回给所述测试管理前端。9.根据权利要求8所述的方法,其特征在于,所述测试执行端调用预先创建的测试任务插件来执行分配到的测试任务,包括: 测试执行端确定分配到的测试任务的类型; 测试执行端依据确定的测试任务的类型,调用预先创建的测试任务插件来执行分配到的测试任务,其中测试任务的类型包括单元测试任务、功能测试任务和持续集成任务,测试插件包括单元测试插件、功能测试插件和持续集成插件。10.根据权利要求8所述的方法,其特征在于,测试控制端依据所述测试任务的提交指令,将所述测试任务发送给为所述测试任务分配的所述测试执行端,包括: 测试控制端从测试执行端获取所述测试任务的执行信息,所述执行信息包括测试状态、执行日志、测试任务结果和测试执行端的状态信息中的至少一个; 测试控制端依据测试任务的执行信息,通过应用程序编程接口向所述测试管理前端返回测试任务结果和测试状态。
【专利摘要】本发明公开了一种面向敏捷的自动化测试管理系统。该系统包括:测试管理前端,用于创建测试任务,并向测试控制端发送测试任务的提交指令,其中测试任务的提交指令包含为测试任务分配的测试执行端;测试控制端,用于依据测试任务的提交指令,将测试任务发送给为测试任务分配的测试执行端;测试执行端,用于获取分配到的测试任务,调用预先创建的测试任务插件来执行分配到的测试任务,并将执行信息通过测试控制端返回给测试管理前端。该系统提供了一个适合敏捷开发模式的自动化测试管理平台,通过该平台有效的、灵活的对项目实施过程中运用的自动化测试进行管理,从而达到提高测试执行效率,保证软件质量和发布周期的效果。
【IPC分类】G06F11/36
【公开号】CN105487977
【申请号】CN201510857092
【发明人】王静, 赵丹
【申请人】北京锐安科技有限公司
【公开日】2016年4月13日
【申请日】2015年11月30日

最新回复(0)