[发明专利]一种代码质量检测方法、设备、服务器及可读存储介质在审
申请号: | 202010128292.2 | 申请日: | 2020-02-27 |
公开(公告)号: | CN111427769A | 公开(公告)日: | 2020-07-17 |
发明(设计)人: | 周志龙 | 申请(专利权)人: | 中国平安人寿保险股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 熊永强;彭程 |
地址: | 518000 广东省深圳市福田区益田路5033号*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 质量 检测 方法 设备 服务器 可读 存储 介质 | ||
本发明实施例公开了一种代码质量检测方法、设备、服务器及可读存储介质,其中,该方法包括:获取待测试的项目源代码对应的项目树,所述项目树包括多个模块文件;对所述项目树中各个模块文件中的代码进行过滤,并根据过滤后的所述项目树中各个模块文件中的代码确定所述各个模块文件之间的关联关系;根据所述各个模块文件之间的关联关系,从所述项目树中确定出关联度大于预设关联度阈值的目标模块文件;对所述目标模块文件中的代码进行分析,并根据分析结果确定所述项目源代码的质量。通过这种实施方式,可以自动化、智能化地分析代码,有助于提高代码质量检测的效率。
技术领域
本发明涉及代码质量检测技术领域,尤其涉及一种代码质量检测方法、设备、服务器及可读存储介质。
背景技术
目前,针对项目代码质量的检测,在获取到待检测的项目代码后需要人工对项目代码进行分析以区分项目代码的结构以及指定项目代码中待分析的模块区域,从而根据人工确定的项目代码的结构和待分析的模块区域来检测项目代码质量。然而,这种方式在面对多个项目时需要大量的人员精力来对多个项目代码进行分析,工作量大,效率低,从而影响项目代码质量检测的效率。因此,如何更高效快速地进行代码分析,以提高项目代码质量检测的效率成为亟待解决的问题。
发明内容
本发明实施例提供了一种代码质量检测方法、设备、服务器及可读存储介质,可以自动化、智能化地分析代码,有助于提高代码质量检测的效率。
第一方面,本发明实施例提供了一种代码质量检测方法,包括:
获取待测试的项目源代码对应的项目树,所述项目树包括多个模块文件;
对所述项目树中各个模块文件中的代码进行过滤,并根据过滤后的所述项目树中各个模块文件中的代码确定所述各个模块文件之间的关联关系;
根据所述各个模块文件之间的关联关系,从所述项目树中确定出关联度大于预设关联度阈值的目标模块文件;
对所述目标模块文件中的代码进行分析,并根据分析结果确定所述项目源代码的质量。
进一步地,所述对所述项目树中各个模块文件中的代码进行过滤,包括:
获取所述项目树中各个模块文件中代码的语法格式;
根据所述项目树中各个模块文件中代码的语法格式确定通用语法关系;
根据所述通用语法关系对所述项目树中各个模块文件中的代码进行过滤处理。
进一步地,所述根据所述通用语法关系对所述项目树中各个模块文件中的代码进行过滤处理,包括:
根据所述通用语法关系确定与所述项目树中各个模块文件中的代码对应的语法树;
对所述语法树进行遍历得到遍历结果,并根据所述遍历结果从所述项目树的各个模块文件的代码中删除不满足预设质量条件的冗余代码。
进一步地,所述根据所述遍历结果从所述项目树的各个模块文件的代码中删除不满足预设质量条件的冗余代码,包括:
根据所述待测试的项目源代码建立语法规范性检测模型;
根据所述语法规范性检测模型对所述待测试的项目源代码进行检测,得到检测结果;
将所述遍历结果与所述检测结果进行比较,并根据比较结果从所述项目树的各个模块文件的代码中删除不满足预设质量条件的冗余代码。
进一步地,所述根据比较结果从所述项目树的各个模块文件的代码中删除不满足预设质量条件的冗余代码,包括:
如果比较结果为所述遍历结果中存在与所述检测结果不一致的冗余代码,则确定所述冗余代码不满足预设质量条件;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国平安人寿保险股份有限公司,未经中国平安人寿保险股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010128292.2/2.html,转载请声明来源钻瓜专利网。