System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及测试,特别是涉及一种测试任务执行环境部署方法、装置、计算机设备和介质。
技术介绍
1、服务器的自动化测试过程中,需要不断开发完善自动化脚本来对测试机器进行测试。面对越来越多的测试需求,越来越复杂的测试场景,自动化测试脚本的数量和类型越来越多,版本迭代越来越快,脚本依赖的插件和工具也越来越多,差异化越来越大。面对越来越多的测试需求,越来越复杂的测试场景,自动化测试脚本的数量和类型越来越多,版本迭代越来越快,脚本依赖的插件和工具也越来越多,差异化越来越大。那么将不同类型、不同版本的自动化脚本及相关依赖的插件和工具部署到要测试的服务器机器上面执行自动化测试也变得越来越复杂。需要不断重复的更新依赖插件、工具的类型和版本。
2、如此重复的更新依赖插件、工具的类型和版本,会占用的大量的测试时间,严重影响的自动化测试的执行效率。因此,简化自动化脚本依赖插件和工具的更新操作,减少测试人员在测试准备和执行过程中对脚本依赖插件和工具处理时间对提升测试效率是十分必要的。
技术实现思路
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、其中,通过遗传算法模型输出待安装插件、待安装工具包括:以每一插件、每一工具的文件信息以及下载优先级构建目标函数,其中,插件目标函数maxf为:
41、
42、插件约束条件为:
43、
44、其中,aij表示从插件i开始下载至插件j结束下载数据大小,maxf表示最大化插件下载数量,f表示插件集合,f∈[f1,f2,f3......fn],m为惩罚系数,y为同时下载插件数据大小最大值;
45、其中,工具目标函数maxz为:
46、
47、工具约束条件为:
48、
49、其中,aij表示从工具i开始下载至工具j结束下载数据大小,maxz表示最大化工具下载数量,z表示工具集合,z∈[z1,z2,z3......zn],m为惩罚系数,m为同时下载工具数据大小最大值。
50、在其中一个实施例中,安装待安装插件、待安装工具包括:
51、响应于接收到选取的待安装插件、待安装工具,生成下载请求,下载请求包括目标下载链接,目标下载链接包括待安装插件下载链接、待安装工具下载链接;
52、基于本文档来自技高网...
【技术保护点】
1.一种测试任务执行环境部署方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:形成预设的脚本依赖清单,所述形成预设的脚本依赖清单包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求2所述的方法,其特征在于,所述根据所述代码提交事件获取目标脚本代码,从目标脚本代码中提取目标脚本内容包括:
6.根据权利要求1所述的方法,其特征在于,所述从预设的插件以及工具库中选取待安装插件、待安装工具包括:
7.根据权利要求1所述的方法,其特征在于,所述安装待安装插件、待安装工具包括:响应于接收到选取的待安装插件、待安装工具,生成下载请求,所述下载请求包括目标下载链接,所述目标下载链接包括待安装插件下载链接、待安装工具下载链接;
8.一种测试任务执行环境部署装置,其特征在于,所述装置包括:
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
...【技术特征摘要】
1.一种测试任务执行环境部署方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:形成预设的脚本依赖清单,所述形成预设的脚本依赖清单包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求2所述的方法,其特征在于,所述根据所述代码提交事件获取目标脚本代码,从目标脚本代码中提取目标脚本内容包括:
6.根据权利要求1所述的方法,其特征在于,所述从预设的插件以及工具库中选取待安装插件、待安装工具包括:
7.根据权利要求1所述...
【专利技术属性】
技术研发人员:张松,冯忠堂,孟己,
申请(专利权)人:苏州元脑智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。