[发明专利]项目代码扫描方法、装置、计算机设备及存储介质在审
申请号: | 201910048267.0 | 申请日: | 2019-01-18 |
公开(公告)号: | CN109871319A | 公开(公告)日: | 2019-06-11 |
发明(设计)人: | 刘慧众 | 申请(专利权)人: | 深圳壹账通智能科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 深圳众鼎专利商标代理事务所(普通合伙) 44325 | 代理人: | 黄章辉 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 项目代码 扫描 子文件 代码文件 历史项目 计算机设备 差异代码 存储介质 静态代码 目标链路 扫描工具 语法树结构 代码模块 扫描结果 结构链 准确率 查找 申请 | ||
本申请公开了一种项目代码扫描方法、装置、计算机设备及存储介质,该项目代码扫描方法首先通过获取项目代码文件和所述项目代码文件对应的历史项目代码文件,所述项目代码文件包括多个子文件,所述项目代码文件对应的历史项目代码文件包括多个历史子文件;再确定所述项目代码文件和所述历史项目代码文件中,每个子文件的路径名和文件名;然后对比每一相同路径名下,文件名相同的所述子文件和所述历史子文件的代码模块的差异,得到差异代码模块;之后查找所述差异代码模块在语法树结构中的结构链路,得到目标链路;最后采用静态代码扫描工具对所述目标链路所对应的项目代码模块进行扫描,得到项目代码的扫描结果,采用静态代码扫描工具对项目代码进行针对性扫描,能够提高项目代码扫描的效率和准确率。
技术领域
本申请涉及代码质量检测领域,尤其涉及一种项目代码扫描方法、装置、计算机设备及存储介质
背景技术
现如今,随着计算机科学技术的高速发展,应用软件开发的分工不断细化,在一个项目开发过程中,工程师们需要负责开发的模块各不相同。但是这样的分工往往容易出现源代码混乱,从而导致程序出错。为了避免这些错误,需要对应用软件开发项目的源代码进行管理。
传统方案通常的做法是对项目代码做全量的代码扫描。在一些代码量大的项目中,采用全量代码扫描的方法目的性不强,效率低,还十分容易出错。
发明内容
本申请提供一种项目代码扫描方法、装置、计算机设备及存储介质,采用静态代码扫描工具对修改过的项目代码进行针对性地扫描,能够提高项目代码扫描的效率和准确率。
一种项目代码扫描方法,包括:
获取项目代码文件和所述项目代码文件对应的历史项目代码文件,所述项目代码文件包括多个子文件,所述项目代码文件对应的历史项目代码文件包括多个历史子文件;
确定所述项目代码文件和所述历史项目代码文件中,每个子文件的路径名和文件名;
对比每一相同路径名下,文件名相同的所述子文件和所述历史子文件的代码模块的差异,得到差异代码模块,所述代码模块是以为函数或者方法为单位的;
查找所述差异代码模块在语法树结构中的结构链路,得到目标链路,其中,所述语法树结构为预先采用语法树分析工具对项目代码文件进行语法树分析得到的;
采用静态代码扫描工具对所述目标链路所对应的代码模块进行扫描,得到项目代码的扫描结果。
一种项目代码扫描装置,包括:
获取模块,用于获取项目代码文件和所述项目代码文件对应的历史项目代码文件,所述项目代码文件包括多个子文件,所述项目代码文件对应的历史项目代码文件包括多个历史子文件;
确定模块,用于确定所述项目代码文件和所述历史项目代码文件中,每个子文件的路径名和文件名;
对比模块,用于对比每一相同路径名下,文件名相同的所述子文件和所述历史子文件的代码模块的差异,得到差异代码模块,所述代码模块是以为函数或者方法为单位的;
查找模块,用于查找所述差异代码模块在语法树结构中的结构链路,得到目标链路,其中,所述语法树结构为预先采用语法树分析工具对项目代码文件进行语法树分析得到的;
扫描模块,用于采用静态代码扫描工具对所述目标链路所对应的代码模块进行扫描,得到项目代码的扫描结果。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述项目代码扫描方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述项目代码扫描方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳壹账通智能科技有限公司,未经深圳壹账通智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910048267.0/2.html,转载请声明来源钻瓜专利网。