[发明专利]方法调用链的可视化方法、系统、设备及介质在审
申请号: | 202110724225.1 | 申请日: | 2021-06-29 |
公开(公告)号: | CN113448850A | 公开(公告)日: | 2021-09-28 |
发明(设计)人: | 张皓 | 申请(专利权)人: | 平安健康保险股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 王勇 |
地址: | 200030 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 方法 调用 可视化 系统 设备 介质 | ||
1.一种方法调用链的可视化方法,其特征在于,所述方法包括:
获取目标项目的项目文件,所述项目文件包括多个方法;
根据所述项目文件,配置所述目标项目的目标信息表,所述目标信息表用于存储所述项目文件的全量信息;
获取所述目标项目的测试覆盖率,所述测试覆盖率用于表示所述目标项目的各个方法的调用情况;
根据所述测试覆盖率,获取所述项目文件中未被覆盖的目标方法;
根据所述目标方法,从所述目标信息表中获取目标调用链;及
对所述目标调用链进行可视化处理,并展示可视化处理后的目标调用链。
2.如权利要求1所述的方法调用链的可视化方法,其特征在于,所述根据所述项目文件,配置所述目标项目的全量代码信息表的步骤,包括:
解析所述项目文件,得到文件解析结果,所述文件解析结果包括目标项目关联的包名、类名、方法名和各个方法的调用关系;
根据所述包名、所述类名和所述方法名获取各个方法的层级关系;及
将所述文件解析结果存储到预先创建的初始信息表中,以根据所述层级关系和所述调用关系生成具有层级关系的所述目标信息表。
3.如权利要求2所述的方法调用链的可视化方法,其特征在于,所述解析所述项目文件,得到文件解析结果的步骤,包括:
根据预设过滤规则对所述项目文件进行过滤操作,以得到过滤后的项目文件;及
解析所述过滤后的项目文件得到所述文件解析结果。
4.如权利要求3所述的方法调用链的可视化方法,其特征在于,所述解析所述过滤后的项目文件得到所述文件解析结果的步骤,包括:
通过反射原理对所述过滤后的项目文件进行反编译解析操作,以得到多个目标格式文件;及
对所述多个目标格式文件进行静态扫描操作,以得到所述文件解析结果。
5.如权利要求1所述的方法调用链的可视化方法,其特征在于,所述获取所述目标项目的测试覆盖率的步骤,包括:
执行配置在所述目标项目在对应的服务器上的各个预设测试用例;
获取所述各个预设测试用例对所述目标项目的覆盖率报告,以得到多个覆盖率报告;及
根据所述多个覆盖率报告获取所述测试覆盖率。
6.如权利要求1所述的方法调用链的可视化方法,其特征在于,所述获取所述各个预设测试用例对所述目标项目的覆盖率报告的步骤,包括:
当开始执行目标预设测试用例时,对所述服务器进行第一次探针插桩操作,其中,所述目标预设测试用例为多个预设测试用例中的任意一个预设测试用例;
当结束执行目标预设测试用例时,对所述服务器进行第二次探针插桩操作;
根据所述第一次探针插桩操作和所述第二次探针插桩操作获取所述目标预设测试用例对所述目标项目的目标覆盖率报告。
7.如权利要求1至6中任一项所述的方法调用链的可视化方法,其特征在于,还包括:根据所述目标调用链对所述目标方法进行测试,并将所述目标调用链上传到区块链。
8.一种方法调用链的可视化系统,其特征在于,包括:
文件获取模块,用于获取目标项目的项目文件,所述项目文件包括多个方法;
信息表配置模块,用于根据所述项目文件,配置所述目标项目的目标信息表,所述目标信息表用于存储所述项目文件的全量信息;
覆盖率获取模块,用于获取所述目标项目的测试覆盖率,所述测试覆盖率用于表示所述目标项目的各个方法的调用情况;
方法获取模块,用于根据所述测试覆盖率,获取所述项目文件中未被覆盖的目标方法;
调用链获取模块,用于根据所述目标方法,从所述目标信息表中获取目标调用链;及
调用链展示模块,用于对所述目标调用链进行可视化处理,并展示可视化处理后的目标调用链。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安健康保险股份有限公司,未经平安健康保险股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110724225.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:基于动态数据的文档生成方法与系统
- 下一篇:一种复合催化剂及其制备方法和应用