[发明专利]代码分析方法、装置、计算机设备及存储介质在审
申请号: | 202110396877.7 | 申请日: | 2021-04-13 |
公开(公告)号: | CN112988593A | 公开(公告)日: | 2021-06-18 |
发明(设计)人: | 宋大伟;杨群峰;徐志普 | 申请(专利权)人: | 苏州沁游网络科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 215006 江苏省苏州市苏州工*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 分析 方法 装置 计算机 设备 存储 介质 | ||
本发明实施例公开了一种代码分析方法、装置、设备及存储介质。其中,方法包括:获取目标分析代码,所述目标分析代码包括多个用于实现不同功能的代码块,每个代码块中预先标注有功能注解数据;在目标分析代码的执行过程中,动态捕捉每个代码块在执行过程中所生成的动态描述数据;根据所述动态描述数据以及所述功能注解数据,形成与所述目标分析代码对应的执行流程描述信息。本发明实施例可以实现对代码执行过程中生成的动态数据的实时获取,直观地记录了代码执行的流程及代码功能的实现情况,以使开发测试人员快速了解代码的业务逻辑,以及快速定位到代码错误导致的业务流程异常。
技术领域
本发明实施例涉及计算机技术领域,尤其涉及一种代码分析方法、装置、计算机设备及存储介质。
背景技术
借助计算机进行代码分析可以帮助开发人员准确、高效地理解代码的业务逻辑、功能以及查找出代码存在的缺陷。现有技术中,市面上主流代码分析工具主要包括以下几种:1、Checkstyle:通过检查代码编码格式、命名约定、Javadoc和类设计等方面,有效约束开发人员更好地遵循代码编写规范;2、FindBugs:通过检查类文件或JAR文件,将字节码与一组缺陷模式进行对比从而发现代码缺陷,完成静态代码分析;3、PMD:通过其内置的编码规则对Java代码进行静态检查,主要包括对潜在的bug,未使用的代码,重复的代码,循环体创建新对象等问题的检验;4、Jtest:是Parasoft公司推出的一款针对Java语言的自动化代码优化和测试工具,其静态代码分析功能能够按照其内置的超过800条的Java编码规范自动检查,同时还支持用户自定义编码规则,帮助用户预防一些特殊用法的错误。
然而,现有技术提供的代码分析工具均是基于对静态代码进行分析,以进行代码规范和风格的检查,查找出代码编写中出现的语法错误或代码重复等漏洞,无法获得代码执行过程中生成的动态数据,从而无法帮助开发测试人员了解代码执行的流程,亦无法根据代码错误快速定位到业务流程中出现的异常。
发明内容
本发明实施例提供一种代码分析方法、装置、计算机设备及存储介质,以实现对代码执行过程中生成的动态数据的实时获取,直观地记录了代码执行的流程及代码功能的实现情况,以使开发测试人员快速了解代码的业务逻辑,以及快速定位到代码错误导致的业务流程异常。
第一方面,本发明实施例提供了一种代码分析方法,包括:
获取目标分析代码,所述目标分析代码包括多个用于实现不同功能的代码块,每个代码块中预先标注有功能注解数据;
在目标分析代码的执行过程中,动态捕捉每个代码块在执行过程中所生成的动态描述数据;
根据所述动态描述数据以及所述功能注解数据,形成与所述目标分析代码对应的执行流程描述信息。
第二方面,本发明实施例还提供了一种代码分析装置,包括:
代码获取模块,用于获取目标分析代码,所述目标分析代码包括多个用于实现不同功能的代码块,每个代码块中预先标注有功能注解数据;
数据捕捉模块,用于在目标分析代码的执行过程中,动态捕捉每个代码块在执行过程中所生成的动态描述数据;
流程描述模块,用于根据所述动态描述数据以及所述功能注解数据,形成与所述目标分析代码对应的执行流程描述信息。
第三方面,本发明实施例还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的代码分析方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州沁游网络科技有限公司,未经苏州沁游网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110396877.7/2.html,转载请声明来源钻瓜专利网。