本技术涉及计算机,具体涉及一种基于测试的资源调度方法、装置和计算机设备。
背景技术:
1、软件开发生命周期非常复杂,为了确保软件的质量,在软件开发过程中必不可少的一个环节便是对软件进行测试。在对软件进行测试时,完成一个测试任务可能需要运行多个测试脚本,而每个测试脚本在运行时都需要占用一定量的测试资源。本技术的发明人通过对现有技术进行实践,发现现有技术中存在对测试资源调度不合理的问题。由于现有技术中对测试资源调度不合理,会延长测试时间,从而导致测试效率低下。
技术实现思路
1、本技术实施例提出了一种基于测试的资源调度方法、装置和计算机设备,可以实现对测试资源进行合理的调度,减少测试需要的时间,从而提高测试效率。
2、本技术实施例提供了一种基于测试的资源调度方法,包括:
3、获取测试任务对应的测试资源,所述测试任务包括多个测试脚本;
4、对所述测试任务中每个测试脚本进行解析,得到每个测试脚本对应的测试场景信息;
5、基于所述测试场景信息,对所述多个测试脚本进行分组,得到至少一个测试组;
6、基于所述测试资源和所述预设测试指标,在所述测试组中筛选出初始测试集,其中,所述初始测试集包括至少两个进行合并测试的测试组;
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、在一实施例中,所述判别子单元,可以包括:
42、第二识别模块,用于识别出所述初始测试集中每个测试组对应的测试脚本数量;
43、第二计算模块,用于基于所述每个测试组对应的测试脚本数量,计算所述初始测试集中的可合并脚本数量;
44、判别模块,用于利用预设数量判别条件对所述可合并脚本数量进行判别处理,得到所述判别结果。
45、在一实施例中,所述合并子单元,可以包括:
46、测试集确定模块,用于基于初始测试集,在至少一个测试组中确定剩余测试集;
47、划分模块,用于基于所述判别结果,在多个初始测试集中划分出待更新测试集和待处理测试集;
48、筛选模块,用于基于所述待更新测试集的可合并脚本数量,在所述待处理测试集和剩余测试集中筛选出待合并测试集;
49、合并模块,用于将所述待合并测试集中的测试脚本并到所述待更新测试集中,得到目标测试集。
50、在一实施例中,所述筛选模块,可以包括:
51、第二确定子模块,用于确定待处理测试集和运行脚本数量之间的余数关系,以及剩余测试集和运行脚本数量之间的余数关系;
52、排序子模块,用于基于余数关系,对剩余测试集和待处理测试集进行排序,得到排序后测试集;
53、第二计算子模块,用于基于所述待更新测试集的可合并脚本数量,计算所述待更新测试集的更新后脚本数量;
54、筛选子模块,用于根据所述更新后脚本数量,在排序后测试集中筛选出待合并测试集。
55、在一实施例中,所述筛选子模块,可以用于:
56、根据排序后测试集的排序结果,在排序后测试集中筛选出至少一个待计算测试集;
57、计算待计算测试集的测试脚本总量;
58、当所述测试脚本总量符合所述更新后脚本数量时,将所述待计算测试集确定为所述待合并测试集。
59、在一实施例中,所述分组单元,可以包括:
60、匹配子单元,用于将每个测试脚本对应的测试场景信息进行匹配处理,得到匹配结果;
61、脚本筛选子单元,用于基于所述匹配结果,在所述测试脚本中筛选出具有关联关系的关联测试脚本;
62、添加子单元,用于将所述关联测试脚本添加到预设存储组中,得到所述测试组。
63、本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述一方面的各种可选方式中提供的方法。
64、相应的,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有指令,所述指令被处理器执行时实现本技术实施例任一提供的基于测试的资源调度方法。
65、本技术实施例可以获取测试任务对应的测试资源,测试任务包括多个测试脚本;对测试任务中每个测试脚本进行解析,得到每个测试脚本对应的测试场景信息;基于测试场景信息,对多个测试脚本进行分组,得到至少一个测试组;基于测试资源和预设测试指标,在测试组中筛选出初始测试集,其中,初始测试集包括至少两个进行合并测试的测试组;基于初始测试集的测试脚本数量,对初始测试集进行更新处理,得到目标测试集;从测试资源中确定目标测试集中测试脚本复用的目标测试资源,将目标测试资源分配给对应的目标测试集,可以实现对测试资源进行合理的调度,减少测试需要的时间,从而提高测试效率。