脚本执行方法、装置、电子设备和计算机可读介质制造方法及图纸

技术编号:34007505 阅读:14 留言:0更新日期:2022-07-02 13:45
本公开的实施例公开了脚本执行方法、装置、电子设备和计算机可读介质。该方法的一具体实施方式包括:对被测系统进行扫描处理,得到编译包依赖关系图;将编译包依赖关系图中每个叶子结点处的编译包对应的故障类型确定为目标故障类型,得到目标故障类型集合;根据目标故障类型集合生成故障编码,以及利用故障编码确定故障脚本组集合;将故障脚本组集合中的故障脚本和预先设置的压测脚本组集合中的压测脚本进行组合,得到脚本组集合;将脚本组集合中每个脚本组中的脚本注入被测系统并执行脚本组中的脚本,得到脚本执行结果。该实施方式可以提高故障模拟的自动化和精准化,可在多种模拟环境下进行测试。并可提高应对复杂场景下的突发问题的解决能力。下的突发问题的解决能力。下的突发问题的解决能力。

【技术实现步骤摘要】
脚本执行方法、装置、电子设备和计算机可读介质


[0001]本公开的实施例涉及计算机
,具体涉及脚本执行方法、装置、电子设备和计算机可读介质。

技术介绍

[0002]在系统访问的高峰期前,往往需要对系统进行压力测试和故障演练。目前,在对对系统进行压力测试和故障演练时,通常采用的方式为:通过人工分析模拟真实的场景,手动的进行压力测试和故障模拟。
[0003]然而,当采用上述方式进行压力测试和故障演练时,经常会存在如下技术问题:
[0004]第一,故障模拟的自动化和精准化较低;
[0005]第二,压力测试和故障演练的场景较为单一,难以应对复杂场景下的突发问题。

技术实现思路

[0006]本公开的内容部分用于以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。本公开的内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
[0007]本公开的一些实施例提出了脚本执行方法、装置、电子设备和计算机可读介质,来解决以上
技术介绍
部分提到的技术问题中的一项或多项。
[0008]第一方面,本公开的一些实施例提供了一种脚本执行方法方法,该方法包括:对被测系统进行扫描处理,得到编译包依赖关系图;利用预先设置的编译包和故障类型之间的映射信息,将上述编译包依赖关系图中每个叶子结点处的编译包对应的故障类型确定为目标故障类型,得到目标故障类型集合;根据上述目标故障类型集合生成故障编码,以及利用上述故障编码确定故障脚本组集合;将上述故障脚本组集合中的故障脚本和预先设置的压测脚本组集合中的压测脚本进行组合,得到脚本组集合;将上述脚本组集合中每个脚本组中的脚本注入上述被测系统并执行上述脚本组中的脚本,得到脚本执行结果。
[0009]可选的,上述将上述脚本组集合中每个脚本组中的脚本注入上述被测系统并执行上述脚本组中的脚本,得到脚本执行结果,还包括:将上述脚本组对应的故障类型、压测场景、执行上述脚本组中的脚本的过程中产生的日志和上述脚本执行结果的标识作为测试记录进行存储。
[0010]可选的,上述将上述脚本组集合中每个脚本组中的脚本注入上述被测系统并执行上述脚本组中的脚本,得到脚本执行结果,还包括:从上述脚本执行结果中提取测试指标值,得到测试指标值集合;响应于确定上述测试指标值集合中存在不满足对应阈值的测试指标值,对上述测试记录进行标记,以及将标记后的测试记录发送至目标终端。
[0011]可选的,上述将上述故障脚本组集合中的故障脚本和预先设置的压测脚本组集合中的压测脚本进行组合,得到脚本组集合,包括:将上述故障脚本组集合中的每个故障脚本与压测脚本组集合中的各个压测脚本进行组合,得到脚本组;将上述故障脚本组集合中的
各个故障脚本与压测脚本组集合中的每个压测脚本进行组合,得到脚本组;将上述故障脚本组集合中的各个故障脚本与压测脚本组集合中的各个压测脚本进行组合,得到脚本组。
[0012]可选的,上述对被测系统进行扫描处理,得到编译包依赖关系图,包括:遍历上述被测系统的库文件中的编译包,以及递归解压确定每个编译包的依赖关系,以生成编译包依赖关系图。
[0013]可选的,上述对被测系统进行扫描处理,得到编译包依赖关系图,包括:对上述被测系统的代码进行扫描和解析处理,得到编译包依赖关系图。
[0014]可选的,上述根据上述目标故障类型集合生成故障编码,以及利用上述故障编码确定故障脚本组集合,包括:确定预先设置的故障类型序列中的每个故障类型是否与上述目标故障类型集合中的任一目标故障类型相匹配,以及响应于确定上述故障类型与上述目标故障类型集合中的任一目标故障类型相匹配,将预设的初始故障编码中与上述故障类型对应的位置处的数值调整为目标数值;将调整后的初始故障编码确定为故障编码;依次将上述故障编码中数值为上述目标数值的位置所表征的故障类型对应的各个故障脚本确定为故障脚本组,得到故障脚本组序列;将上述故障脚本组序列中各个满足预设条件的故障脚本组组合为故障脚本组集合。
[0015]第二方面,本公开的一些实施例提供了一种脚本执行装置,装置包括:扫描单元,被配置成对被测系统进行扫描处理,得到编译包依赖关系图;确定单元,被配置成利用预先设置的编译包和故障类型之间的映射信息,将上述编译包依赖关系图中每个叶子结点处的编译包对应的故障类型确定为目标故障类型,得到目标故障类型集合;生成以及确定单元,被配置成根据上述目标故障类型集合生成故障编码,以及利用上述故障编码确定故障脚本组集合;组合单元,被配置成将上述故障脚本组集合中的故障脚本和预先设置的压测脚本组集合中的压测脚本进行组合,得到脚本组集合;注入以及执行单元,被配置成将上述脚本组集合中每个脚本组中的脚本注入上述被测系统并执行上述脚本组中的脚本,得到脚本执行结果。
[0016]可选的,上述注入以及执行单元还包括存储子单元,被配置成将上述脚本组对应的故障类型、压测场景、执行上述脚本组中的脚本的过程中产生的日志和上述脚本执行结果的标识作为测试记录进行存储。
[0017]可选的,上述注入以及执行单元还包括存储子单元和标记以及发送子单元。其中,提取子单元,被配置成从上述脚本执行结果中提取测试指标值,得到测试指标值集合;标记以及发送子单元,被配置成响应于确定上述测试指标值集合中存在不满足对应阈值的测试指标值,对上述测试记录进行标记,以及将标记后的测试记录发送至目标终端。
[0018]可选的,上述组合单元包括:第一组合子单元、第二组合子单元和第三组合子单元。其中,第一组合子单元,被配置成将上述故障脚本组集合中的每个故障脚本与压测脚本组集合中的各个压测脚本进行组合,得到脚本组;第二组合子单元,被配置成将上述故障脚本组集合中的各个故障脚本与压测脚本组集合中的每个压测脚本进行组合,得到脚本组;第三组合子单元,被配置成将上述故障脚本组集合中的各个故障脚本与压测脚本组集合中的各个压测脚本进行组合,得到脚本组。
[0019]可选的,上述扫描单元,被进一步配置成遍历上述被测系统的库文件中的编译包,以及递归解压确定每个编译包的依赖关系,以生成编译包依赖关系图。
[0020]可选的,上述扫描单元,被进一步配置成对上述被测系统的代码进行扫描和解析处理,得到编译包依赖关系图。
[0021]可选的,上述生成以及确定单元包括:第一确定子单元、第二确定子单元、第三确定子单元和组合子单元。其中,第一确定子单元,被配置成确定预先设置的故障类型序列中的每个故障类型是否与上述目标故障类型集合中的任一目标故障类型相匹配,以及响应于确定上述故障类型与上述目标故障类型集合中的任一目标故障类型相匹配,将预设的初始故障编码中与上述故障类型对应的位置处的数值调整为目标数值;第二确定子单元,被配置成将调整后的初始故障编码确定为故障编码;第三确定子单元,被配置成依次将上述故障编码中数值为上述目标数值的位置所表征的故障类型对应的各个故障脚本确定为故障脚本组,得到故障脚本组序列;组合子单元,被配置成将上述本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种脚本执行方法,包括:对被测系统进行扫描处理,得到编译包依赖关系图;利用预先设置的编译包和故障类型之间的映射信息,将所述编译包依赖关系图中每个叶子结点处的编译包对应的故障类型确定为目标故障类型,得到目标故障类型集合;根据所述目标故障类型集合生成故障编码,以及利用所述故障编码确定故障脚本组集合;将所述故障脚本组集合中的故障脚本和预先设置的压测脚本组集合中的压测脚本进行组合,得到脚本组集合;将所述脚本组集合中每个脚本组中的脚本注入所述被测系统并执行所述脚本组中的脚本,得到脚本执行结果。2.根据权利要求1所述的方法,其中,所述将所述脚本组集合中每个脚本组中的脚本注入所述被测系统并执行所述脚本组中的脚本,得到脚本执行结果,还包括:将所述脚本组对应的故障类型、压测场景、执行所述脚本组中的脚本的过程中产生的日志和所述脚本执行结果的标识作为测试记录进行存储。3.根据权利要求2所述的方法,其中,所述将所述脚本组集合中每个脚本组中的脚本注入所述被测系统并执行所述脚本组中的脚本,得到脚本执行结果,还包括:从所述脚本执行结果中提取测试指标值,得到测试指标值集合;响应于确定所述测试指标值集合中存在不满足对应阈值的测试指标值,对所述测试记录进行标记,以及将标记后的测试记录发送至目标终端。4.根据权利要求1所述的方法,其中,所述将所述故障脚本组集合中的故障脚本和预先设置的压测脚本组集合中的压测脚本进行组合,得到脚本组集合,包括:将所述故障脚本组集合中的每个故障脚本与压测脚本组集合中的各个压测脚本进行组合,得到脚本组;将所述故障脚本组集合中的各个故障脚本与压测脚本组集合中的每个压测脚本进行组合,得到脚本组;将所述故障脚本组集合中的各个故障脚本与压测脚本组集合中的各个压测脚本进行组合,得到脚本组。5.根据权利要求1所述的方法,其中,所述对被测系统进行扫描处理,得到编译包依赖关系图,包括:遍历所述被测系统的库文件中的编译包,以及递归解压确定每个编译包的依赖关系,以生成编译包依赖关系图。6.根据权利要求1所述...

【专利技术属性】
技术研发人员:李一伟
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1