一种测试任务的分配方法及计算设备与流程
- 国知局
- 2024-07-31 22:42:05
本技术涉及服务器,尤其涉及一种测试任务的分配方法及计算设备。
背景技术:
1、测试任务是指要完成某个测试目标所需要进行的自动化测试工作,是测试套件的集合。其中,测试套件是多个服务于同一个测试目的或运行在同一测试设备中的一系列测试用例的集合。
2、在相关技术中,在执行测试任务时,通常是将测试任务包括的多个测试套件,平均分配到不同的测试设备上进行测试。测试设备可以依次执行每个测试套件的每个测试用例。
3、但是,由于不同的测试套件的执行时长不同,可能存在部分测试设备在执行完分配到的测试套件后,处于空闲状态,而被分配到其他测试设备上的部分测试套件处于等待执行的状态的情况,从而导致测试任务的执行时长较长,进而导致测试效率低。
技术实现思路
1、本技术实施例提供一种测试任务的分配方法及计算设备。能够缩短测试任务的执行时长,提高测试效率。
2、第一方面,本技术实施例提供一种测试任务的分配方法,方法包括:
3、获取测试任务以及测试设备的数量;其中,测试任务包括测试套件;测试套件包括测试用例;测试设备用于执行测试任务;测试设备的数量大于1;
4、将测试任务分解为多个测试对象,并确定每个测试对象的历史执行时长;其中,测试对象为测试用例或测试套件;
5、根据测试设备的数量以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,使多个测试设备间的执行时长的差值处于预设时长范围内。
6、在该方案中,管理设备可以获取测试任务、以及测试设备的数量(大于1),测试任务包括测试套件,测试套件包括测试用例,测试设备用于执行测试任务。管理设备可以将测试任务分解为多个测试对象(测试套件或测试用例),并确定每个测试对象的历史执行时长。管理设备可以根据测试设备的数量、以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,以使多个测试设备间的执行时长的差值处于预设时长范围内。通过上述方式,管理设备可以从测试对象(测试套件或者测试用例)的粒度,根据测试对象的历史执行时长,对测试任务进行调度,使多个测试设备间的执行时长的差值处于预设时长范围内,从而缩短测试任务的执行时长,提高测试效率。
7、在一种实现方式中,根据测试设备的数量以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,使多个测试设备间的执行时长的差值处于预设时长范围内,包括:
8、根据每个测试对象的历史执行时长,确定总执行时长;
9、根据总执行时长和测试设备的数量,确定每个测试设备的平均执行时长;
10、根据平均执行时长以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,使多个测试设备间的执行时长的差值处于预设时长范围内。
11、在该方案中,管理设备可以根据每个测试对象(测试套件或测试用例)的历史执行时长,以及每个测试设备的平均执行时长,将多个测试对象分配至多个测试设备。通过上述方式,可以实现测试对象(测试用例或测试套件)的均衡调度,使得每个测试设备上被分配到的全部测试对象的执行总时长相近,从而在多个测试设备同时开始执行测试对象的情况下,缩短测试任务的执行总时长,提高了测试效率。
12、在一种实现方式中,根据平均执行时长以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,使多个测试设备间的执行时长的差值处于预设时长范围内,包括:
13、针对任意一个测试设备,从多个测试对象中选择第一测试对象,作为测试设备对应的测试对象;
14、计算测试设备对应的全部测试对象的总历史执行时长;
15、在总历史执行时长小于平均执行时长的情况下,从多个测试对象中选择第二测试对象,作为测试设备对应的测试对象。
16、在该方案中,管理设备在为测试设备分配一个测试对象后,计算该测试设备对应的全部测试对应的总历史执行时长,管理设备可以在识别到总历史执行时长小于平均执行时长的情况下,确定该测试设备对应的测试对象尚未选择完毕。管理设备可以继续开启下一次选择流程——从多个测试对象中选择第二测试对象,作为测试设备对应的测试对象。通过上述方式,可以实现测试对象(测试用例或测试套件)的均衡调度,使得每个测试设备上被分配到的全部测试对象的执行总时长相近。
17、在一种实现方式中,将测试任务分解为多个测试对象,包括:
18、根据每个测试套件的拆分标识,将测试任务分解为多个测试对象;其中,测试套件的拆分标识用于指示测试套件是否可以拆分为测试用例。
19、在该方案中,可以根据每个测试套件的拆分标识,将测试任务分解为多个测试对象。提高了分解测试任务的准确率和效率。
20、在一种实现方式中,根据每个测试套件的拆分标识,将测试任务分解为多个测试对象,包括:
21、在测试套件的拆分标识指示测试套件可拆分的情况下,将测试套件拆分为多个测试用例,将每个测试用例作为测试对象;
22、在测试套件的拆分标识指示测试套件不可拆分的情况下,将测试套件作为测试对象。
23、在该方案中,通过根据每个测试套件的拆分标识,确定是否拆分测试套件的方式,避免了管理设备直接对所有的测试套件进行拆分处理,导致出现部分测试用例无法执行的情况,提高了测试效果。
24、在一种实现方式中,确定每个测试对象的历史执行时长,包括:
25、从测试历史数据库中确定测试对象是否存在历史执行时长;
26、在测试对象不存在历史执行时长的情况下,将预设执行时长确定为测试对象的历史执行时长。
27、在该方案中,管理设备可以在识别到测试历史数据库中不存在测试对象的历史执行时长的情况下,直接将预设执行时长确定为测试对象的历史执行时长,提高了测试效率。
28、在一种实现方式中,在测试对象不存在历史执行时长的情况下,将预设执行时长确定为测试对象的历史执行时长,包括:
29、在测试对象为测试用例的情况下,将第一预设执行时长确定为测试对象的历史执行时长;
30、在测试对象为测试套件的情况下,将第二预设执行时长确定为测试对象的历史执行时长。
31、在该方案中,管理设备可以在识别到测试对象不存在历史执行时长的情况下,根据测试对象的类型,确定对应的预设执行时长,提高了预设执行时长与测试对象的匹配度,进而提高了测试效率。
32、在一种实现方式中,方法还包括:
33、将测试对象发送至测试设备执行;
34、获取测试对象的测试结果;其中,测试结果包括测试对象的执行时长;
35、将测试对象的执行时长更新至测试历史数据库中作为测试对象的历史执行时长。
36、在该方案中,管理设备可以在获取测试结果后,根据测试结果包括的测试对象的执行时长,对测试历史数据库中的测试对象的历史执行时长进行更新处理,从而可以持续优化测试任务的调度方式,进而可以持续优化测试效率。
37、在一种实现方式中,将测试对象发送至测试设备执行,包括:
38、将测试对象发送至测试设备,并向测试设备发送执行指令;其中,执行指令用于控制测试设备执行测试对象。
39、在该方案中,管理设备可以将测试对象发送至测试设备,并向测试设备发送执行指令,以供测试设备根据执行指令,执行测试对象。通过上述方式,实现了管理设备对测试设备执行测试对象的有效控制。
40、第二方面,本技术实施例提供一种测试任务的分配装置,包括:
41、收发模块,用于获取测试任务以及测试设备的数量;其中,测试任务包括测试套件;测试套件包括测试用例;测试设备用于执行测试任务;测试设备的数量大于1;
42、处理模块,用于将测试任务分解为多个测试对象,并确定每个测试对象的历史执行时长;其中,测试对象为测试用例或测试套件;
43、处理模块,还用于根据测试设备的数量以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,使多个测试设备间的执行时长的差值处于预设时长范围内。
44、本技术实施例提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
45、在一种实现方式中,处理模块,具体用于:
46、根据每个测试对象的历史执行时长,确定总执行时长;
47、根据总执行时长和测试设备的数量,确定每个测试设备的平均执行时长;
48、根据平均执行时长以及每个测试对象的历史执行时长,将多个测试对象分配至多个测试设备,使多个测试设备间的执行时长的差值处于预设时长范围内。
49、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
50、在一种实现方式中,处理模块,具体用于:
51、针对任意一个测试设备,从多个测试对象中选择第一测试对象,作为测试设备对应的测试对象;
52、计算测试设备对应的全部测试对象的总历史执行时长;
53、在总历史执行时长小于平均执行时长的情况下,从多个测试对象中选择第二测试对象,作为测试设备对应的测试对象。
54、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
55、在一种实现方式中,处理模块,具体用于:
56、根据每个测试套件的拆分标识,将测试任务分解为多个测试对象;其中,测试套件的拆分标识用于指示测试套件是否可以拆分为测试用例。
57、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
58、在一种实现方式中,处理模块,具体用于:
59、在测试套件的拆分标识指示测试套件可拆分的情况下,将测试套件拆分为多个测试用例,将每个测试用例作为测试对象;
60、在测试套件的拆分标识指示测试套件不可拆分的情况下,将测试套件作为测试对象;
61、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
62、在一种实现方式中,处理模块,具体用于:
63、从测试历史数据库中确定测试对象是否存在历史执行时长;
64、在测试对象不存在历史执行时长的情况下,将预设执行时长确定为测试对象的历史执行时长。
65、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
66、在一种实现方式中,处理模块,具体用于:
67、在测试对象为测试用例的情况下,将第一预设执行时长确定为测试对象的历史执行时长;
68、在测试对象为测试套件的情况下,将第二预设执行时长确定为测试对象的历史执行时长。
69、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
70、在一种实现方式中,
71、收发模块,还用于将测试对象发送至测试设备执行;
72、收发模块,还用于获取测试对象的测试结果;其中,测试结果包括测试对象的执行时长;
73、处理模块,还用于将测试对象的执行时长更新至测试历史数据库中作为测试对象的历史执行时长。
74、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
75、在一种实现方式中,收发模块,具体用于:
76、将测试对象发送至测试设备,并向测试设备发送执行指令;其中,执行指令用于控制测试设备执行测试对象。
77、本实现方式提供的测试任务的分配装置,可以执行上述方法实施例所示的技术方案,其有益效果类似,此处不再赘述。
78、第三方面,本技术实施例提供一种计算设备,该计算设备可以用于作为管理设备;
79、该计算设备包括存储器和处理器;
80、存储器与处理器耦合;
81、存储器用于存储计算机指令;
82、处理器用于执行计算机指令,以使计算设备实现第一方面的测试任务的分配方法。
83、本技术实施例提供的管理设备,可以执行上述方法实施例中的技术方案,其有益效果类似,此处不再进行赘述。
84、第四方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现第一方面的测试任务的分配方法。
85、本技术实施例提供的计算机可读存储介质,可以执行上述方法实施例中的技术方案,其有益效果类似,此处不再进行赘述。
86、第五方面,本技术实施例提供一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时用于实现第一方面的测试任务的分配方法。
87、本技术实施例提供的计算机程序产品,可以执行上述方法实施例中的技术方案,其有益效果类似,此处不再进行赘述。
本文地址:https://www.jishuxx.com/zhuanli/20240730/194170.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表