[发明专利]增量代码覆盖率合并方法、系统、电子设备和存储介质在审

专利信息
申请号: 202210943288.0 申请日: 2022-08-08
公开(公告)号: CN115344479A 公开(公告)日: 2022-11-15
发明(设计)人: 许建峰 申请(专利权)人: 上海中通吉网络技术有限公司
主分类号: G06F11/36 分类号: G06F11/36;G06F40/143;G06F40/146
代理公司: 北京细软智谷知识产权代理有限责任公司 11471 代理人: 牛晓
地址: 201799 上*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 增量 代码 覆盖率 合并 方法 系统 电子设备 存储 介质
【说明书】:

发明涉及代码覆盖率技术领域,具体涉及一种增量代码覆盖率合并方法、系统、电子设备,本发明在实际应用中,解析测试完成后的XML文件并生成临时文件数据,其中,所述XML文件包含有覆盖率报告信息,且所述覆盖率报告信息至少包括:方法名、行号,基于所述覆盖率报告信息,获取差异代码,基于所述临时文件数据和所述差异代码生成exec文件,并解析,渲染生成合并后的增量代码覆盖率报告和新的XML文件,通过本发明的技术方案不仅能够看到本次与上次被覆盖的代码处,而且在源代码更改的情况下,之前更改的内容会跟随转移、合并至变更后的代码文件中,做到了根据历史覆盖率报告,重新计算增量代码覆盖率,使得覆盖率报告结果更加准确。

技术领域

本发明属于代码覆盖率技术领域,具体涉及一种增量代码覆盖率合并方法、系统、电子设备。

背景技术

JaCoCo通过修改类文件的字节码来做代码覆盖率统计,换句话说,探测字节码将被插入到原始类字节码的指定位置,形成新的字节码指令流,JaCoCo使用ASM字节码框架来修改字节码,JaCoCo的探测实际上是一个布尔值。当代码执行到探测位置时,将其设置为true,探测前面的代码将被认为已经执行,然后在与这部分代码对应的超文本标记语言文件中染色CSS样式(红色表示未覆盖,绿色表示覆盖,黄色表示部分覆盖),以形成最终的覆盖报告。

目前,通过对JaCoCo二次开发后,可以生成增量代码覆盖率报告,但是每次生成的报告只能看到本次与上次被覆盖的代码处,看不到之前或者是更早的代码覆盖处。若后期需要对源代码进行变更,在此之前覆盖的代码内容不会跟随转移合并至变更后的代码文件中,导致覆盖率报告结果不准确,甚至引起很多不必要的麻烦。

发明内容

为至少在一定程度上克服相关技术中存在的问题,本发明提供一种增量代码覆盖率合并方法、系统、电子设备,以解决在现有技术中在后期对源代码进行变更时,之前覆盖的代码内容不会跟随转移合并至变更后的代码文件中,从而导致覆盖率报告结果不准确的技术问题。

为实现以上目的,本发明采用如下技术方案:

第一方面,

本发明提供一种增量代码覆盖率合并方法,其特征在于,所述方法包括:

解析测试完成后的XML文件并生成临时文件数据,其中,所述XML文件包含有覆盖率报告信息,且所述覆盖率报告信息至少包括:方法名、行号;

基于所述覆盖率报告信息,获取差异代码;

基于所述临时文件数据和所述差异代码生成exec文件,并解析,渲染生成合并后的增量代码覆盖率报告和新的XML文件。

进一步地,所述解析测试完成后的XML文件并生成临时文件数据,其中,所述XML文件包含有覆盖率报告信息,且所述覆盖率报告信息至少包括:方法名、行号,具体为:

解析上一次测试完成后生成的携带有覆盖率报告信息的XML文件。

进一步地,所述基于所述覆盖率报告信息,获取差异代码,具体为:

接收ClassName合并后的覆盖率文件,并根据所述覆盖率文件中的覆盖率报告信息,判断所述覆盖率文件是否在上一次测试中被覆盖:

若是,则判定为非差异代码;

若否,则判定为差异代码。

进一步地,所述基于所述临时文件数据和所述差异代码生成exec文件,并,渲染生成合并后的增量代码覆盖率报告和新的XML文件,具体为:

根据所述临时文件数据和所述差异代码,使用改造后JaCoCo生成新的exec文件,通过Report服务设置方法与之对应的行号,并重现渲染行覆盖情况,生成合并后的增量代码覆盖率报告新的XML文件。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海中通吉网络技术有限公司,未经上海中通吉网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210943288.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top