一种测试任务分派方法、装置及服务器与流程

文档序号:15445185发布日期:2018-09-14 23:16阅读:114来源:国知局

本发明实施例涉及测试技术,尤其涉及一种测试任务分派方法、装置及服务器。



背景技术:

测试系统获取测试任务后,将测试任务分派给技术人员。技术人员获取测试任务,借助业内流行的测试辅助工具,例如,测试管理工具(qualitycenter,qc)或电子表格软件excel,编辑和管理测试用例,并对测试用例的执行情况进行管理。随着业务复杂度及测试用例量的增加,测试任务分派成了一项繁重的工作。在测试用例量多、业务复杂、测试人员专业技术水平差异大的情况下,不合理的测试任务分派会产生较多问题。

传统的测试任务分派方法是直接将测试任务指派到某个人或某个组上,测试用例设计和测试用例执行一起做,没有明细分工。例如,传统的测试任务分派方法直接将包括需求分析、测试用例设计和测试用例执行的测试任务指派到某个人。即分析、设计人员和执行人员是一个人。测试任务领取人领到某个业务相关的测试任务后,既要负责测试需求分析、测试用例设计也要负责测试用例执行。测试任务领取人在完成线下沟通后,在线上通过qc或其它工具辅助下完成需求分析、测试用例设计和测试用例执行。

现有技术中的方法存在以下缺陷:(1)测试人员专业水平参差不齐,业务熟悉程度也不一样。传统的测试分派方式由于是通过线下沟通和主观判断进行的,会出现分配不均,判断不准的问题,会大大增加测试的工作量,降低测试效率,也会影响测试质量;(2)传统的测试系统,例如qc,在系统使用量大的时候,会出现性能瓶颈,使用缓慢的问题,而且整个测试系统的架构体系不利于做分布式横向扩展。



技术实现要素:

本发明提供一种测试任务分派方法、装置及服务器,以实现根据测试人员的特点、业务系统的特点合理地进行测试任务的分派,降低测试成本,提高测试效率和测试质量。

第一方面,本发明实施例提供了一种测试任务分派方法,包括:

根据获取到的至少一个测试用例生成测试用例集;其中,所述测试用例由预设测试设计人员根据预设测试需求建立;

将所述测试用例集存储至任务池;

根据预设测试执行人员信息为所述测试用例集确定至少一个对应的测试执行小组,所述测试执行小组包括至少一个测试执行人员;

当获取到所述测试执行人员输入的,获取测试执行任务的请求时,根据所述测试执行人员的业务数据和所述测试用例集的每一个所述测试用例的参考数据,确定所述测试用例对应于所述测试执行人员的优先级结果值;

根据所述优先级结果值向所述测试执行人员分派相应的所述测试用例。

第二方面,本发明实施例还提供了一种测试任务分派装置,包括:

用例集获取模块,用于根据获取到的至少一个测试用例生成测试用例集;其中,所述测试用例由预设测试设计人员根据预设测试需求建立;

用例集存储模块,用于将所述测试用例集存储至任务池;

执行人员确定模块,用于根据预设测试执行人员信息为所述测试用例集确定至少一个对应的测试执行小组,所述测试执行小组包括至少一个测试执行人员;

优先级确定模块,用于当获取到所述测试执行人员输入的,获取测试执行任务的请求时,根据所述测试执行人员的业务数据和所述测试用例集的每一个所述测试用例的参考数据,确定所述测试用例对应于所述测试执行人员的优先级结果值;

测试用例分派模块,用于根据所述优先级结果值向所述测试执行人员分派相应的所述测试用例。

第三方面,本发明实施例还提供了一种服务器,包括:

一个或多个处理器;

存储装置,用于存储一个或多个程序,

当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例提供的测试任务分派方法。

本发明实施例的技术方案,通过根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值,并根据优先级结果值向测试执行人员分派相应的测试用例,解决了传统的测试分派方法,可能会导致测试的工作量增加,测试效率和测试质量降低,出现性能瓶颈,使用缓慢的问题,实现降低测试成本,提高测试效率和测试质量,处理测试任务更加快速的效果。

附图说明

图1为本发明实施例一提供的一种测试任务分派方法的流程图;

图2为本发明实施例一提供的一种测试任务分派过程的示意图;

图3为本发明实施例二提供的一种测试任务分派方法的流程图;

图4为本发明实施例二提供的一种时间优先级的曲线图;

图5为本发明实施例三提供的一种测试任务分派方法的流程图;

图6为本发明实施例三提供的一种测试任务超时回收过程的流程图;

图7为本发明实施例四提供的一种测试任务分派装置的结构框图;

图8为本发明实施例五提供的一种服务器的结构示意图。

具体实施方式

下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。

实施例一

图1为本发明实施例一提供的一种测试任务分派方法的流程图,本实施例可适用于进行测试任务的分派的情况,该方法可以由测试任务分派装置来执行,所述装置由软件和/或硬件来执行,并一般可集成在服务器中。具体包括如下步骤:

步骤101、根据获取到的至少一个测试用例生成测试用例集;其中,测试用例由预设测试设计人员根据预设测试需求建立。

其中,测试任务由测试设计任务和测试执行任务组成。预设测试设计人员获取测试任务包含的预设测试需求之后,对预设测试需求进行分析,例如,分析预设测试需求包含的测试点,然后设计测试步骤,添加或引用测试数据,建立测试用例,完成测试设计任务。可选的,预设测试设计人员包括至少一个测试设计人员。

测试用例是描述如何做测试执行的实例,由测试步骤和测试数据组成。测试执行人员获取测试用例后,执行测试用例,完成测试执行任务。

测试用例集可以由多个测试用例组成,用于将测试用例批量地放入任务池里供测试执行人员进行获取测试用例,以及执行测试用例。通过条件筛选将获取到的至少一个测试用例添加到一个批次中,生成测试用例集。可选的,根据预设测试需求设置用于条件筛选的条件字段。可选的,一个测试用例可以复用于多个测试用例集。

步骤102、将测试用例集存储至任务池。

其中,生成测试用例集后,将测试用例集存储至任务池,以使测试用例集中在任务池里,并对测试用例进行统一管理。

可选的,任务池采用微服务的架构体系。微服务是一种分布式的软件架构,适合做分布式多节点负载均衡部署,便于横向扩展,当性能出现瓶颈时,可以根据具体模块增加节点部署。任务池采用分布式架构进行部署,支持分布式多节点运行,可按模块拆分多个微服务,可以灵活地横向扩展,处理测试任务更加快速,提升了整体的性能。

步骤103、根据预设测试执行人员信息为测试用例集确定至少一个对应的测试执行小组,测试执行小组包括至少一个测试执行人员。

其中,根据预设测试执行人员信息为测试用例集确定至少一个对应的测试执行小组。每个测试执行小组包括至少一个测试执行人员。测试执行人员负责完成测试用例集对应的测试任务。为测试用例集确定一个对应的测试执行小组时,如果未建立测试执行小组,则选择至少一个测试人员保存为测试执行小组(保存时需要输入测试执行小组的组名),并将测试执行小组对应到测试用例集。

步骤104、当获取到测试执行人员输入的,获取测试执行任务的请求时,根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值。

其中,根据预设测试执行人员信息为测试用例集确定至少一个对应的测试执行人员后,测试执行人员可以输入获取测试执行任务的请求。

当获取到所述测试执行人员输入的,获取测试执行任务的请求时,采用多种优先级算法,根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于所述测试执行人员的优先级结果值,直至确定测试用例集的全部测试用例对应于测试执行人员的所述优先级结果值。

测试执行人员的业务数据至少包括专业技术水平值、测试用例难易度总和以及测试用例执行时间总和。测试用例的参考数据至少包括:预设的测试用例集的执行开始时间和执行结束时间、测试用例的难易度和执行当前处理测试用例的当前时间。

优先级算法至少包括:用例优先算法、时间优先算法、专业技术水平优先算法和效率优先算法。具体的,用例优先,是指在设计测试用例时,给测试用例指定一个优先级别。级别高的测试用例优先执行。可选的,生成测试用例集后,给测试用例集批量指定优先级别。时间优先,是指在生成测试用例集时,设置测试用例集的执行计划时间,根据时间决定测试用例是否优先执行。专业技术水平优先,是指根据测试执行人员的专业技术水平高低,决定分配难易度高的还是难易度低的测试用例。其中,设计测试用例时需要指定测试用例的难易度。可选的,如果设计测试用例时未指定测试用例的难易度,则根据测试步骤的个数,测试步骤中的操作复杂程度进行计算,生成测试用例的难易度。效率优先,是指根据测试执行人员执行测试用例的快慢,决定是否将测试用例优先分派给执行效率高的测试执行人员。

优先级算法之间有比例权重关系,可以通过对应的运算公式,根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,计算测试用例对应于所述测试执行人员的优先级结果值。

步骤105、根据优先级结果值向测试执行人员分派相应的测试用例。

其中,获取测试用例集中的全部测试用例对应于测试执行人员的优先级结果值进行排序,将优先级结果值最高的测试用例分派给测试执行人员。可选的,如果测试用例集中的全部测试用例的优先级结果值都相同,则按测试用例创建先后顺序排序将最早创建的一个测试用例返回给测试执行人员。

图2为本发明实施例一提供的一种测试任务分派过程的示意图。如图2所示,预设测试设计人员根据预设测试需求建立的测试用例1、测试用例2……测试用例n生成测试用例集后,存储至任务池。与测试用例集对应的测试执行人员1、测试执行人员2……测试执行人员n可以通过输入获取测试执行任务的请求获取测试执行任务。其中,当获取到测试执行人员输入的,获取测试执行任务的请求时,采用预设的算法或策略,根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值,并根据优先级结果值向测试执行人员分派相应的测试用例。

本实施例提供的一种测试任务分派方法,通过根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值,并根据优先级结果值向测试执行人员分派相应的测试用例,解决了传统的测试分派方法,可能会导致测试的工作量增加,测试效率和测试质量降低,出现性能瓶颈,使用缓慢的问题,达到了根据测试人员的特点、业务系统的特点合理地进行测试任务的分派,降低测试成本,提高测试效率和测试质量,处理测试任务更加快速的效果。

实施例二

图3为本发明实施例二提供的一种测试任务分派方法的流程图,本实施例在上述各实施例的基础上进行优化。如图3所示,该方法包括:

步骤201、根据获取到的至少一个测试用例生成测试用例集;其中,测试用例由预设测试设计人员根据预设测试需求建立。

步骤202、将测试用例集存储至任务池。

步骤203、根据预设测试执行人员信息为测试用例集确定至少一个对应的测试执行小组,测试执行小组包括至少一个测试执行人员。

步骤204、当获取到测试执行人员输入的,获取测试执行任务的请求时,按照测试执行人员所属的测试执行小组和测试用例集上预设的测试执行小组,筛选出测试执行人员可以获取的测试用例集。

其中,每一个测试用例集预设都有对应的测试执行小组。该测试执行小组中的测试执行人员可以获取测试用例集。当获取到测试执行人员输入的,获取测试执行任务的请求时,通过判断测试执行人员所属的测试执行小组和测试用例集上预设的测试执行小组是否对应,筛选出测试执行人员可以获取的测试用例集。

步骤205、按照预设顺序获取测试用例集中的一个测试用例作为当前处理测试用例。

其中,预先设置测试用例集中的测试用例的顺序,按照预设顺序获取测试用例集中的一个测试用例作为当前处理测试用例。

步骤206、根据预设的测试用例集的执行开始时间和执行结束时间,以及执行当前处理测试用例的当前时间,确定时间优先权重值。

其中,时间优先权重值的取值范围为0~1,以测试用例集的执行开始时间和执行结束时间为时间区间。在生成测试用例集时,设置测试用例集的执行开始时间和执行结束时间。

可选的,根据预设的测试用例集的执行开始时间和执行结束时间,以及执行当前处理测试用例的当前时间,确定时间优先权重值,包括:

执行当前处理测试用例的当前时间小于或等于预设的测试用例集的执行开始时间时,时间优先权重值取0。

执行当前处理测试用例的当前时间等于预设的测试用例集的执行结束时间时,时间优先权重值取1。

执行当前处理测试用例的当前时间大于预设的测试用例集的执行结束时间时,时间优先权重值取0。

执行当前处理测试用例的当前时间大于预设的测试用例集的执行开始时间,且小于预设的测试用例集的执行结束时间时,时间优先权重值为执行当前处理测试用例的当前时间减去所述测试用例的测试开始时间的差值与总执行时间的比值,其中,总执行时间等于用预设的测试用例集的执行结束时间与执行开始时间的差值。

步骤207、根据时间优先权重值确定时间优先级。

其中,时间优先级为时间优先权重值的平方。

图4为本发明实施例二提供的一种时间优先级的曲线图。图4的横坐标是执行当前处理测试用例的当前时间,纵坐标是时间优先级的值。如图4所示,执行当前处理测试用例的当前时间小于或等于预设的测试用例集的执行开始时间时,时间优先级为0;执行当前处理测试用例的当前时间大于预设的测试用例集的执行开始时间,且小于预设的测试用例集的执行结束时间时,时间优先级为执行当前处理测试用例的当前时间减去所述测试用例的测试开始时间的差值与总执行时间的比值的平方值,呈抛物线走势;执行当前处理测试用例的当前时间等于预设的测试用例集的执行结束时间时,时间优先权重值取1,时间优先级为1;执行当前处理测试用例的当前时间大于预设的测试用例集的执行结束时间时,时间优先级为0。

步骤208、根据当前处理测试用例的难易度和测试执行人员的专业技术水平值,确定专业技术水平优先级。

其中,专业技术水平优先级的取值范围为0~1,用于衡量测试执行人员专业技术水平与当前处理测试用例的难易度的匹配程度。

可选的,根据当前处理测试用例的难易度和测试执行人员的专业技术水平值,确定专业技术水平优先级,包括:

根据以下公式,计算专业技术水平优先级:

x3=(9-|y1-y2|)/9

其中,x3为专业技术水平优先级,y1为当前处理测试用例的难易度,y1的取值范围为1~10,y2为测试执行人员的专业技术水平值,y2的取值范围为1~10。可选的,测试执行人员的专业技术水平值由测试主管或测试经理评定。

步骤209、根据测试执行人员的测试用例难易度总和,以及测试用例执行时间总和,确定效率优先级,其中,测试用例难易度总和是测试执行人员已执行的测试用例的难易度的总和,测试用例执行时间总和是测试执行人员已执行的测试用例的执行时间的总和。

其中,测试执行人员执行测试用例时,记录测试执行人员所执行的每一个测试用例的难易度以及执行时间。测试执行人员的测试用例难易度总和是测试执行人员已执行的测试用例的难易度的总和。测试执行人员的测试用例执行时间总和是测试执行人员已执行的测试用例的执行时间的总和。

可选的,根据测试执行人员的测试用例难易度总和,以及测试用例执行时间总和,确定效率优先级,包括:

当测试用例执行时间总和为0时,效率优先级取0.5;

当测试用例执行时间总和大于0时,效率优先级等于测试执行人员的测试用例难易度总和与测试用例执行时间总和的比值,其中,当比值大于1时,所述效率优先级取1。

其中,时间单位为分钟,效率优先级的取值范围为0~1。

步骤210、根据预设的当前处理测试用例优先级、时间优先级、专业技术水平优先级以及效率优先级,确定当前处理测试用例对应于测试执行人员的优先级结果值。

其中,获取根据预设的当前处理测试用例优先级,并通过计算得到当前处理测试用例对应的时间优先级、当前处理测试用例对应于测试执行人员的专业技术水平优先级以及效率优先级,然后通过预设的优先级算法确定当前处理测试用例对应于测试执行人员的优先级结果值。

可选的,根据以下公式,计算优先级结果值:

其中,y为当前处理测试用例对应于测试执行人员的优先级结果值,x1为预设的当前处理测试用例优先级,x1的取值范围为1~10,x2为时间优先权重值,为时间优先级,x3为专业技术水平优先级,x4为效率优先级,k1为预设的专业技术水平优先级的比例,k2为预设的效率优先级的比例,k1+k2=100%。

x1为预设的当前处理测试用例优先级,是在设计测试用例时,给测试用例指定的优先级别。可选的,生成测试用例集后,给测试用例集批量指定优先级别。x1取值范围为1~10。1代表优先级最低,10代表优先级最高。

x2为当前处理测试用例对应的时间优先权重值,为当前处理测试用例对应的时间优先级。x2、和y的计算分如下几种情况:1)执行当前处理测试用例的当前时间小于或等于预设的测试用例集的执行开始时间时,x2=0,y=0;2)执行当前处理测试用例的当前时间等于预设的测试用例集的执行结束时间时,x2=1,y=x1*(x3*k1+x4*k2);3)执行当前处理测试用例的当前时间大于预设的测试用例集的执行结束时间时,x2=0,y=0;4)执行当前处理测试用例的当前时间大于预设的测试用例集的执行开始时间,且小于预设的测试用例集的执行结束时间时,x2为执行当前处理测试用例的当前时间减去所述测试用例的测试开始时间的差值与总执行时间的比值,为执行当前处理测试用例的当前时间减去所述测试用例的测试开始时间的差值与总执行时间的比值的平方值,如图4所示,呈抛物线走势。此时,根据以下公式,计算优先级结果值:

以上几种情况说明,执行当前处理测试用例的当前时间还未到达测试用例集的执行开始时间或已经过了测试用例集的执行结束时间时,优先级结果值为0,说明测试用例不允许执行;而执行当前处理测试用例的当前时间在预设的测试用例集的执行开始时间和执行结束时间中间时,执行当前处理测试用例的当前时间越靠近执行结束时间,测试用例的时间优先级越高,而且是呈平方比例增加。

根据以下公式,计算x3:

x3=(9-|y1-y2|)/9

其中,x3为专业技术水平优先级,y1为所述当前处理测试用例的难易度,y1的取值范围为1~10,y2为所述测试执行人员的专业技术水平值,y2的取值范围为1~10。

x4为效率优先级,当测试用例执行时间总和为0时,x4取0.5;当测试用例执行时间总和大于0时,x4等于测试执行人员的测试用例难易度总和与测试用例执行时间总和的比值,其中,当比值大于1时,x4取1。

k1为预设的专业技术水平优先级的比例,k2为预设的效率优先级的比例。根据业务需求设置k1和k2,保证k1+k2=100%。

步骤211、返回执行按照预设顺序获取测试用例集中的一个测试用例作为当前处理测试用例的操作,直至确定测试用例集的全部测试用例对应于测试执行人员的优先级结果值。

其中,确定当前处理测试用例对应于测试执行人员的优先级结果值后,依次获取测试用例集中的其他测试用例作为当前处理测试用例,直至确定测试用例集的全部测试用例对应于测试执行人员的优先级结果值。

步骤212、根据优先级结果值向测试执行人员分派相应的测试用例。

可选的,对获取测试用例集中的全部测试用例对应于测试执行人员的优先级结果值进行排序,将优先级结果值最高的测试用例分派给测试执行人员,其中,如果测试用例集中的全部测试用例的优先级结果值都相同,则按测试用例创建先后顺序排序将最早创建的一个测试用例返回给测试执行人员。

其中,获取测试用例集中的全部测试用例对应于测试执行人员的优先级结果值进行排序,将优先级结果值最高的测试用例分派给测试执行人员。如果测试用例集中的全部测试用例的优先级结果值都相同,则按测试用例创建先后顺序排序将最早创建的一个测试用例返回给测试执行人员。其中,当同一测试用例对应于至少两个测试执行人员的优先级结果值相同时,根据先到先得的规则进行分派,将测试用例优先分配给先输入获取测试执行任务的请求的测试执行人员。

本实施例提供的一种测试任务分派方法,通过根据预设的当前处理测试用例优先级、时间优先级、专业技术水平优先级以及效率优先级,确定当前处理测试用例对应于测试执行人员的所述优先级结果值,对优先级结果值进行排序,将优先级结果值最高的测试用例分派给测试执行人员,解决了传统的测试分派方法,可能会导致测试的工作量增加,测试效率和测试质量降低,出现性能瓶颈,使用缓慢的问题,达到了根据测试人员的特点、业务系统的特点合理地进行测试任务的分派,降低测试成本,提高测试效率和测试质量,处理测试任务更加快速的效果。

实施例三

图5为本发明实施例三提供的一种测试任务分派方法的流程图,本实施例在上述各实施例的基础上进行优化。如图5所示,该方法包括:

步骤301、根据获取到的至少一个测试用例生成测试用例集;其中,测试用例由预设测试设计人员根据预设测试需求建立。

步骤302、将测试用例集存储至任务池。

步骤303、根据预设测试执行人员信息为测试用例集确定至少一个对应的测试执行小组,测试执行小组包括至少一个测试执行人员。

步骤304、当获取到测试执行人员输入的,获取测试执行任务的请求时,根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值。

步骤305、根据优先级结果值向测试执行人员分派相应的测试用例。

步骤306、监测分派给测试执行人员的测试用例的测试进度。

其中,将任务池中的测试用例分派给测试执行人员后,监测测试用例的测试进度,并记录测试用例的分派时间,从测试用例的分派时间开始计时。例如,测试用例的测试进度包括:处理中和未处理。

步骤307、到达第一阈值时间后,如果监测到所述测试执行人员未对测试用例进行处理,则发送提醒信息。

其中,第一阈值时间为预先设置的时间阈值,根据第一阈值时间判断测试用例对应的测试执行任务是否已经超时。到达第一阈值时间后,如果监测到测试执行人员未对测试用例进行处理,则发送提醒信息。例如,第一阈值时间为2小时,从测试用例的分派时间开始计时,到达2小时后,监测到测试执行人员未对所述测试用例进行处理,则发送提醒信息。可选的,提醒信息包括提醒邮件和/或提醒短信。

或者,到达第二阈值时间后,如果监测到测试执行人员未对测试用例进行处理,则将所述测试用例回收至所述任务池。

第二阈值时间为预先设置的时间阈值,根据第二阈值时间判断测试用例对应的测试执行任务是否已经超时。到达第二阈值时间后,如果监测到测试执行人员未对测试用例进行处理,则将测试用例回收至任务池。

进一步的,到达第一阈值时间后,如果监测到测试执行人员未对测试用例进行处理,则发送提醒信息;从到达第一阈值时间开始计时,到达第二阈值时间后,如果监测到测试执行人员还未对测试用例进行处理,则将测试用例回收至任务池。例如,第一阈值时间为2小时,第二阈值时间为4小时,从测试用例的分派时间开始计时,到达2小时后,监测到测试执行人员未对所述测试用例进行处理,则发送提醒信息,然后从到达第一阈值时间开始计时,到达4小时后,监测到测试执行人员未对所述测试用例进行处理,则将测试用例回收至任务池。可选的,将测试用例回收至任务池后,重新对测试用例进行分派。

图6为本发明实施例三提供的一种测试任务超时回收过程的流程图。如图6所示,该过程包括:

步骤601、阈值设置。

其中,预先设置一个阈值。

步骤602、读取阈值,是否超时。若是,则继续执行步骤603;若否,则继续根据阈值判断测试用例对应的测试执行任务是否已经超时。

其中,读取阈值,并根据阈值判断,在将任务池中的测试用例分派给测试执行人员后,测试用例对应的测试执行任务是否已经超时。如果测试执行任务未超时,则继续监测测试用例的测试进度。

步骤603、邮件或短信提醒。

其中,如果测试执行任务超时,则通过发送邮件或短信提醒测试执行人员测试执行任务超时。从到达阈值开始计时,继续监测测试用例的测试进度,到达4小时后,如果监测到测试执行人员仍未对测试用例进行处理,则将测试用例回收至任务池。

本实施例提供的一种测试任务分派方法,通过监测分派给测试执行人员的测试用例的测试进度;到达第一阈值时间后,如果监测到测试执行人员未对所述测试用例进行处理,则发送提醒信息;和/或到达第二阈值时间后,如果监测到所述测试执行人员未对测试用例进行处理,则将测试用例回收至任务池,解决了传统的测试分派方法,可能会导致测试的工作量增加,测试效率和测试质量降低,出现性能瓶颈,使用缓慢的问题,达到了根据测试人员的特点、业务系统的特点合理地进行测试任务的分派,降低测试成本,提高测试效率和测试质量,处理测试任务更加快速,自动监控测试进度,超时自动回收的效果。

实施例四

图7为本发明实施例四提供的一种测试任务分派装置的结构框图。如图7所示,所述装置包括:

用例集获取模块410、用例集存储模块420、执行人员确定模块430、优先级确定模块440和测试用例分派模块450。

其中,用例集获取模块410,用于根据获取到的至少一个测试用例生成测试用例集;其中,测试用例由预设测试设计人员根据预设测试需求建立;用例集存储模块420,用于将测试用例集存储至任务池;执行人员确定模块430,用于根据预设测试执行人员信息为测试用例集确定至少一个对应的测试执行小组,测试执行小组包括至少一个测试执行人员;优先级确定模块440,用于当获取到测试执行人员输入的,获取测试执行任务的请求时,根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值;测试用例分派模块450,用于根据优先级结果值向测试执行人员分派相应的测试用例。

本实施例提供的一种测试任务分派装置,通过根据测试执行人员的业务数据和测试用例集的每一个测试用例的参考数据,确定测试用例对应于测试执行人员的优先级结果值,并根据优先级结果值向测试执行人员分派相应的测试用例,解决了传统的测试分派方法,可能会导致测试的工作量增加,测试效率和测试质量降低,出现性能瓶颈,使用缓慢的问题,达到了根据测试人员的特点、业务系统的特点合理地进行测试任务的分派,降低测试成本,提高测试效率和测试质量,处理测试任务更加快速的效果。

在上述各实施例的基础上,优先级确定模块440包括:

用例集筛选单元,用于按照所述测试执行人员所属的测试执行小组和测试用例集上预设的测试执行小组,筛选出所述测试执行人员可以获取的测试用例集;

用例获取单元,用于按照预设顺序获取测试用例集中的一个测试用例作为当前处理测试用例;

第一确定单元,用于根据预设的测试用例集的执行开始时间和执行结束时间,以及执行当前处理测试用例的当前时间,确定时间优先权重值;

第二确定单元,用于根据时间优先权重值确定时间优先级;

第三确定单元,用于根据当前处理测试用例的难易度和测试执行人员的专业技术水平值,确定专业技术水平优先级;

第四确定单元,用于根据测试执行人员的测试用例难易度总和,以及测试用例执行时间总和,确定效率优先级,其中,测试用例难易度总和是测试执行人员已执行的测试用例的难易度的总和,测试用例执行时间总和是测试执行人员已执行的测试用例的执行时间的总和;

第五确定单元,用于根据预设的当前处理测试用例优先级、时间优先级、专业技术水平优先级以及所述效率优先级,确定当前处理测试用例对应于测试执行人员的所述优先级结果值;

返回单元,用于返回执行按照预设顺序获取测试用例集中的一个测试用例作为当前处理测试用例的操作,直至确定测试用例集的全部测试用例对应于测试执行人员的优先级结果值。

在上述各实施例的基础上,第一确定单元包括:

第一计算子单元,用于执行当前处理测试用例的当前时间小于或等于预设的测试用例集的执行开始时间时,时间优先权重值取0;

第二计算子单元,用于执行当前处理测试用例的当前时间等于预设的测试用例集的执行结束时间时,时间优先权重值取1;

第三计算子单元,用于执行当前处理测试用例的当前时间大于预设的测试用例集的执行结束时间时,时间优先权重值取0;

第四计算子单元,用于执行当前处理测试用例的当前时间大于预设的测试用例集的执行开始时间,且小于预设的测试用例集的执行结束时间时,时间优先权重值为执行当前处理测试用例的当前时间减去所述测试用例的测试开始时间的差值与总执行时间的比值,其中,总执行时间等于用预设的测试用例集的执行结束时间与执行开始时间的差值。

在上述各实施例的基础上,第三确定单元包括:

第五计算子单元,用于根据以下公式,计算专业技术水平优先级:

x3=(9-|y1-y2|)/9

其中,x3为专业技术水平优先级,y1为当前处理测试用例的难易度,y1的取值范围为1~10,y2为测试执行人员的专业技术水平值,y2的取值范围为1~10。

在上述各实施例的基础上,第四确定单元包括:

第六计算子单元,用于当测试用例执行时间总和为0时,效率优先级取0.5;

第七计算子单元,用于当测试用例执行时间总和大于0时,效率优先级等于测试执行人员的测试用例难易度总和与测试用例执行时间总和的比值,其中,当比值大于1时,效率优先级取1。

在上述各实施例的基础上,第五确定单元包括:

第八计算子单元,用于根据以下公式,计算优先级结果值:

其中,y为当前处理测试用例对应于测试执行人员的优先级结果值,x1为预设的当前处理测试用例优先级,x1的取值范围为1~10,x2为时间优先权重值,为时间优先级,x3为专业技术水平优先级,x4为效率优先级,k1为预设的专业技术水平优先级的比例,k2为预设的效率优先级的比例,k1+k2=100%。

在上述各实施例的基础上,测试用例分派模块450包括:优先级排序子单元,用于对获取测试用例集中的全部测试用例对应于测试执行人员的优先级结果值进行排序,将优先级结果值最高的测试用例分派给测试执行人员,其中,如果测试用例集中的全部测试用例的优先级结果值都相同,则按测试用例创建先后顺序排序将最早创建的一个测试用例返回给测试执行人员。

在上述各实施例的基础上,本发明实施例提供的测试任务分派装置可以还包括:

监督监测模块,用于监测分派给测试执行人员的测试用例的测试进度;

信息发送模块,用于到达第一阈值时间后,如果监测到测试执行人员未对测试用例进行处理,则发送提醒信息;和/或

用例回收模块,用于到达第二阈值时间后,如果监测到测试执行人员未对测试用例进行处理,则将测试用例回收至任务池。

本发明实施例所提供的测试任务分派装置可执行本发明任意实施例所提供的测试任务分派方法,具备执行方法相应的功能模块和有益效果。

实施例五

图8为本发明实施例五提供的一种服务器的结构示意图。图8示出了适于用来实现本发明实施方式的示例性服务器512的框图。图8显示的服务器512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图8所示,服务器512以通用计算设备的形式表现。服务器512的组件可以包括但不限于:一个或者多个处理器或者处理单元516,系统存储器528,连接不同系统组件(包括系统存储器528和处理单元516)的总线518。

总线518表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(isa)总线,微通道体系结构(mac)总线,增强型isa总线、视频电子标准协会(vesa)局域总线以及外围组件互连(pci)总线。

服务器512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被服务器512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。

系统存储器528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)530和/或高速缓存存储器532。服务器512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统534可以用于读写不可移动的、非易失性磁介质(图8未显示,通常称为“硬盘驱动器”)。尽管图8中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如cd-rom,dvd-rom或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。存储器528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。

具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如存储器528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。

服务器512也可以与一个或多个外部设备514(例如键盘、指向设备、显示器524等)通信,还可与一个或者多个使得用户能与该服务器512交互的设备通信,和/或与使得该服务器512能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口522进行。并且,服务器512还可以通过网络适配器520与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器520通过总线518与服务器512的其它模块通信。应当明白,尽管图中未示出,可以结合服务器512使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

处理单元516通过运行存储在系统存储器528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的测试任务分派方法。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

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