一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

分析报告的生成方法、装置、电子设备及存储介质与流程

2022-02-19 11:47:23 来源:中国专利 TAG:

技术特征:
1.一种分析报告的生成方法,其特征在于,包括:若满足预设的分析触发条件,则获取目标代码文件的提交记录,确定所述目标代码文件的检测状态;若所述目标代码文件的检测状态为待检测状态,则基于至少两个代码划分粒度对所述目标代码文件进行划分,生成各个代码划分粒度对应的多个代码子数据;分别确定各个代码划分粒度对应的多个代码子数据的代码复杂度;基于所有所述代码划分粒度的所述代码子数据的所述代码复杂度,确定所述目标代码文件的复杂变化信息;根据所述复杂变化信息生成所述目标代码文件的分析报告。2.根据权利要求1所述的生成方法,其特征在于,所述若所述目标代码文件的检测状态为待检测状态,则基于至少两个代码划分粒度对所述目标代码文件进行划分,生成各个代码划分粒度对应的多个代码子数据,包括:获取各个代码划分粒度对应的划分关键字符;基于第n层代码划分粒度的划分关键字符,将所述目标代码文件划分为多个第n层代码子数据;所述n的初始值为预设的划分粒度总数n;判断所述n的数值是否大于1;若所述n的数值大于1;则基于第n

1层代码划分粒度的划分关键字符,对所述第n层代码子数据进行划分,得到多个所述第n

1层代码划分粒度对应的第n

1层代码子数据,并减少所述n的值,返回执行所述判断所述n的数值是否为1的操作;其中,所述第n层代码子数据包含多个第n

1层代码子数据;若所述n的数值小于或等于1,则识别划分完毕,执行所述分别确定各个代码划分粒度对应的多个代码子数据的代码复杂度的操作。3.根据权利要求2所述的生成方法,其特征在于,所述分别确定各个代码划分粒度对应的多个代码子数据的代码复杂度,包括:生成第m层第i个代码子数据的第m层第i个代码流程图,并基于所述第m层第i个代码流程图中包含的节点个数以及流程起始端点的起始个数,确定所述第m层第i个代码子数据的代码复杂度;其中,所述m的初始值为1;所述第m层第i个代码子数据的代码复杂度具体为:cpx(m
i
)=side(m
i
)

nope(m
i
) ξ*point(m
i
),m=1,i≤m
i
其中,cpx(m
i
)为所述第m层第i个代码子数据的代码复杂度;nope(m
i
)为所述节点个数;point(m
i
)为所述起始个数;side(m
i
)为所述代码流程图中节点间的流转关系数;i≤m
i
为第m层的代码子数据的总数;ξ为预设的调整系数;将所述m的数值与预设的划分粒度总数进行比较;若所述m的数值小于或等于所述划分粒度总数,则基于所述第m 1层第j个代码子数据所包含的第m层的各个代码子数据的代码复杂度,计算所述第m 1层第j个代码子数据的代码复杂度;所述所述第m 1层第j个代码子数据的代码复杂度具体为:
其中,num(m 1
i
)为所述第m 1层第j个代码子数据所述包含的第m层的代码子数据的个数;增加所述m的值,并返回执行所述将所述m的数值与预设的划分粒度总数进行比较;若所述m的数值大于所述划分粒度总数,则执行所述基于所述代码子数据的所述代码复杂度,确定所述目标代码文件的复杂变化信息。4.根据权利要求3所述的生成方法,其特征在于,所述生成第m层第i个代码子数据的第m层第i个代码流程图,包括:通过预设的执行脚本运行所述第m层第i个代码子数据;若检测到所述执行脚本调用资源执行运算操作,则创建与当前执行的代码语段对应的流程节点;基于所述运算操作的运算结果的输出数据流以及所述流程节点的输入数据流,建立所述流程节点与其他节点之间的连接关系;根据所有创建的所述流程节点以及所述连接关系,得到所述第m层第i个代码流程图。5.根据权利要求1

4任一项所述的生成方法,其特征在于,所述基于所述代码子数据的所述代码复杂度,确定所述目标代码文件的复杂变化信息,包括:获取所述目标代码文件关于各个代码划分粒度的历史代码数据的历史复杂度;分别计算属于同一代码划分粒度的所述代码复杂度与所述历史复杂度之间的复杂变化因子;根据各个所述代码划分粒度对应的所述复杂变化因子,生成所述目标代码文件的复杂变化信息。6.根据权利要求5所述的生成方法,其特征在于,所述根据所述复杂变化信息生成所述目标代码文件的分析报告,包括:分别获取各个所述代码划分粒度关联的复杂变化阈值;若任一所述代码子数据对应的所述复杂变化因子大于所述任一代码子数据对应的代码划分粒度的所述复杂变化阈值,则识别所述任一代码子数据为异常代码数据;为各个所述异常代码数据配置调整提示信息;根据所述复杂变化信息以及所述调整提示信息导入到预设的报告模板,生成所述分析报告。7.根据权利要求1

4任一项所述的生成方法,其特征在于,在所述若满足预设的分析触发条件,则获取目标代码文件的提交记录,确定所述目标代码文件的检测状态之前,还包括:响应于代码管理员发起的登录操作,得到所述登录操作输入的登录信息;若所述登录信息与预设的合法信息相匹配,则生成触发条件的配置页面;响应于所述代码管理员在所述配置页面内输入的触发参量,并基于所述触发参量生成所述分析触发条件。8.一种分析报告的生成装置,其特征在于,包括:检测状态确定单元,用于若满足预设的分析触发条件,则获取目标代码文件的提交记录,确定所述目标代码文件的检测状态;代码划分单元,用于若所述目标代码文件的检测状态为待检测状态,则基于至少两个
代码划分粒度对所述目标代码文件进行划分,生成各个代码划分粒度对应的多个代码子数据;代码复杂度确定单元,用于分别确定各个代码划分粒度对应的多个代码子数据的代码复杂度;复杂变化信息确定单元,用于基于所有所述代码划分粒度的所述代码子数据的所述代码复杂度,确定所述目标代码文件的复杂变化信息;分析报告输出单元,用于根据所述复杂变化信息生成所述目标代码文件的分析报告。9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。

技术总结
本申请适用于人工智能技术领域,提供了一种分析报告的生成方法、装置、电子设备及存储介质,方法包括:若满足预设的分析触发条件,则获取目标代码文件的提交记录,确定目标代码文件的检测状态;若目标代码文件的检测状态为待检测状态,则基于至少两个代码划分粒度对目标代码文件进行划分,生成各个代码划分粒度对应的多个代码子数据;分别确定各个代码划分粒度对应的多个代码子数据的代码复杂度;基于所有代码划分粒度的代码子数据的代码复杂度,确定目标代码文件的复杂变化信息;根据复杂变化信息生成目标代码文件的分析报告。采用上述方法,能够提高了在软件开发过程中对于异常的代码段的检测效率,继而提高软件程序的开发效率。率。率。


技术研发人员:李子圣
受保护的技术使用者:未鲲(上海)科技服务有限公司
技术研发日:2021.09.29
技术公布日:2022/1/4
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献