代码资源检测方法、装置、电子设备及存储介质制造方法及图纸

技术编号:34899895 阅读:54 留言:0更新日期:2022-09-10 14:03
本发明专利技术涉及测试工具技术,揭露一种代码资源检测方法,包括:提取待检测代码资源文件中的代码文件,对代码文件进行编译检测,得到编译检测结果;对代码文件进行代码解析,得到抽象语法树;根据抽象语法树对代码文件进行代码逻辑检测,得到代码逻辑检测结果;提取待检测代码资源中的配置文件,利用预设的标准配置文件与代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果;将配置检测结果、代码逻辑检测结果及编译检测结果进行逻辑运算,得到目标检测结果。本发明专利技术还涉及一种区块链技术,所述抽象语法树可以存储在区块链节点中。本发明专利技术还提出一种代码资源检测装置、设备以及介质。本发明专利技术可以提高代码资源检测的准确率。准确率。准确率。

【技术实现步骤摘要】
代码资源检测方法、装置、电子设备及存储介质


[0001]本专利技术涉及测试工具技术,尤其涉及一种代码资源检测方法、装置、电子设备及存储介质。

技术介绍

[0002]随着各种代码资源文件自动部署平台的应用,代码资源文件的检测也越来越受到人们的关注。
[0003]但是现有的代码资源文件检测的方法往往只从代码资源文件中的代码是否可以正常编译去检测,检测维度单一,代码资源检测的准确率较低。

技术实现思路

[0004]本专利技术提供一种代码资源检测方法、装置、电子设备及存储介质,其主要目的在于提高了代码资源检测的准确率。
[0005]获取待检测代码资源文件;
[0006]提取所述待检测代码资源文件中的代码文件,对所述代码文件进行编译检测,得到编译检测结果;
[0007]对所述代码文件进行代码解析,得到抽象语法树;
[0008]对所述抽象语法树中的节点进行遍历查询,查询预设语法类型的节点,得到目标节点;
[0009]获取所述语法类型的逻辑检测规则,判断所述目标节点是否符合所述逻辑检测规则,得到代码逻辑检测结果;
[0010]提取所述待检测代码资源中的配置文件,利用预设的标准配置文件与所述代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果;
[0011]将所述配置检测结果、所述代码逻辑检测结果及所述编译检测结果进行逻辑运算,得到目标检测结果;
[0012]将所述目标检测结果发送至检查人员的预设终端设备。
[0013]可选地,所述对所述代码文件进行编译检测,得到编译检测结果,包括:
[0014]利用预设的代码编译器对所述代码文件进行编译,得到编译结果;
[0015]根据预设的编译结果与编译检测结果的映射关系,将所述编译结果进行映射转换,得到所述编译检测结果。
[0016]可选地,所述对所述抽象语法树中的节点进行遍历查询,查询预设语法类型的节点,得到目标节点,包括:
[0017]提取所述预设语法类型的关键词;
[0018]将所述抽象语法树的名称与所述关键词作为作为预设查询函数模板的查询参数,得到节点查询函数;
[0019]基于所述抽象语法树执行所述节点查询函数,得到所述目标节点。
[0020]可选地,所述判断所述目标节点是否符合所述逻辑检测规则,得到代码逻辑检测结果,包括:
[0021]根据所述逻辑检测规则构建检测脚本;
[0022]执行所述检测检测脚本对所述目标节点中的所有代码进行检测,得到节点逻辑检测结果;
[0023]将所有所述节点逻辑检测结果进行逻辑运算,得到所述代码逻辑检测结果。
[0024]可选地,所述利用预设的标准配置文件与所述代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果,包括:
[0025]提取所述代码配置文件中的所有配置字段,得到测试配置字段集;
[0026]提取所述标准配置文件中的所有配置字段,得到标准配置字段集;
[0027]判断所述测试配置字段集与所述标准配置字段集是否相同;
[0028]当所述测试配置字段集与所述标准配置字段集不相同,则所述配置检测结果为异常;
[0029]当所述测试配置字段集与所述标准配置字段集相同,则判断所述代码配置文件中的每个配置字段的字段值与所述标准配置文件中相同配置字段的字段值是否一致;
[0030]当所述代码配置文件中的每个配置字段的字段值与所述标准配置文件中相同配置字段的字段值一致,则所述配置检测结果为正常;
[0031]当所述代码配置文件中的存在配置字段的字段值与所述标准配置文件中相同配置字段的字段值不一致,则所述配置检测结果为异常。
[0032]可选地,所述将所述配置检测结果、所述代码逻辑检测结果及所述编译检测结果进行逻辑运算,得到目标检测结果,包括:
[0033]当所述配置检测结果、所述代码逻辑检测结果及所述编译检测结果均为正常,则所述目标检测结果为正常;
[0034]当所述配置检测结果、所述代码逻辑检测结果及所述编译检测结果中任何一个检测结果为异常,则所述目标检测结果为异常。
[0035]为了解决上述问题,本专利技术还提供一种代码资源检测装置,所述装置包括:
[0036]代码编译及逻辑检测模块,用于获取待检测代码资源文件;提取所述待检测代码资源文件中的代码文件,对所述代码文件进行编译检测,得到编译检测结果;对所述代码文件进行代码解析,得到抽象语法树;对所述抽象语法树中的节点进行遍历查询,查询预设语法类型的节点,得到目标节点;获取所述语法类型的逻辑检测规则,判断所述目标节点是否符合所述逻辑检测规则,得到代码逻辑检测结果;
[0037]代码配置检测模块,用于提取所述待检测代码资源中的配置文件,利用预设的标准配置文件与所述代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果;
[0038]检测反馈模块,用于将所述配置检测结果、所述代码逻辑检测结果及所述编译检测结果进行逻辑运算,得到目标检测结果;将所述目标检测结果发送至检查人员的预设终端设备。
[0039]可选地,所述利用预设的标准配置文件与所述代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果,包括:
[0040]提取所述代码配置文件中的所有配置字段,得到测试配置字段集;
[0041]提取所述标准配置文件中的所有配置字段,得到标准配置字段集;
[0042]判断所述测试配置字段集与所述标准配置字段集是否相同;
[0043]当所述测试配置字段集与所述标准配置字段集不相同,则所述配置检测结果为异常;
[0044]当所述测试配置字段集与所述标准配置字段集相同,则判断所述代码配置文件中的每个配置字段的字段值与所述标准配置文件中相同配置字段的字段值是否一致;
[0045]当所述代码配置文件中的每个配置字段的字段值与所述标准配置文件中相同配置字段的字段值一致,则所述配置检测结果为正常;
[0046]当所述代码配置文件中的存在配置字段的字段值与所述标准配置文件中相同配置字段的字段值不一致,则所述配置检测结果为异常。
[0047]为了解决上述问题,本专利技术还提供一种电子设备,所述电子设备包括:
[0048]存储器,存储至少一个计算机程序;及
[0049]处理器,执行所述存储器中存储的计算机程序以实现上述所述的代码资源检测方法。
[0050]为了解决上述问题,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的代码资源检测方法。
[0051]本专利技术实施例对所述代码文件进行代码解析,得到抽象语法树;对所述抽象语法树中的节点进行遍历查询,查询预设语法类型的节点,得到目标节点;获取所述语法类型的逻辑检测规则,判断所述目标节点是否符合所述逻辑检测本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种代码资源检测方法,其特征在于,所述方法包括:获取待检测代码资源文件;提取所述待检测代码资源文件中的代码文件,对所述代码文件进行编译检测,得到编译检测结果;对所述代码文件进行代码解析,得到抽象语法树;对所述抽象语法树中的节点进行遍历查询,查询预设语法类型的节点,得到目标节点;获取所述语法类型的逻辑检测规则,判断所述目标节点是否符合所述逻辑检测规则,得到代码逻辑检测结果;提取所述待检测代码资源中的配置文件,利用预设的标准配置文件与所述代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果;将所述配置检测结果、所述代码逻辑检测结果及所述编译检测结果进行逻辑运算,得到目标检测结果;将所述目标检测结果发送至检查人员的预设终端设备。2.如权利要求1所述的代码资源检测方法,其特征在于,所述对所述代码文件进行编译检测,得到编译检测结果,包括:利用预设的代码编译器对所述代码文件进行编译,得到编译结果;根据预设的编译结果与编译检测结果的映射关系,将所述编译结果进行映射转换,得到所述编译检测结果。3.如权利要求1所述的代码资源检测方法,其特征在于,所述对所述抽象语法树中的节点进行遍历查询,查询预设语法类型的节点,得到目标节点,包括:提取所述预设语法类型的关键词;将所述抽象语法树的名称与所述关键词作为作为预设查询函数模板的查询参数,得到节点查询函数;基于所述抽象语法树执行所述节点查询函数,得到所述目标节点。4.如权利要求1所述的代码资源检测方法,其特征在于,所述判断所述目标节点是否符合所述逻辑检测规则,得到代码逻辑检测结果,包括:根据所述逻辑检测规则构建检测脚本;执行所述检测检测脚本对所述目标节点中的所有代码进行检测,得到节点逻辑检测结果;将所有所述节点逻辑检测结果进行逻辑运算,得到所述代码逻辑检测结果。5.如权利要求1所述的代码资源检测方法,其特征在于,所述利用预设的标准配置文件与所述代码配置文件进行字段一致性比对以进行代码配置检测,得到配置检测结果,包括:提取所述代码配置文件中的所有配置字段,得到测试配置字段集;提取所述标准配置文件中的所有配置字段,得到标准配置字段集;判断所述测试配置字段集与所述标准配置字段集是否相同;当所述测试配置字段集与所述标准配置字段集不相同,则所述配置检测结果为异常;当所述测试配置字段集与所述标准配置字段集相同,则判断所述代码配置文件中的每个配置字段的字段值与所述标准配置文件中相同配置字段的字段值是否一致;当所述代码配置文件中的每个配置字段的字段值与所述标准配置文件中相同配置字
段的字段值一致,则所述配置检测结果为正常;当所述代码配置文件中的存在配置字段的字段值与所述标准配置文件中相同配置字段的字段值不一致,则所述配置检测结果为异...

【专利技术属性】
技术研发人员:练金明
申请(专利权)人:平安普惠企业管理有限公司
类型:发明
国别省市:

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

1