首页 > 其他分享 >2 - 增量代码覆盖率统计

2 - 增量代码覆盖率统计

时间:2022-08-27 22:39:02浏览次数:51  
标签:覆盖率 代码 全量 增量 jacoco 统计

针对统计代码的不同,可以分为全量代码覆盖率统计和增量代码覆盖率统计

全量统计较为简单,默认每次都是对全量代码进行统计的,但是由于版本开发过程中,每次都是增量代码迭代,而测试过程中并不需要每一轮都覆盖全量用例,因此找出增量代码并对增量代码进行覆盖率统计也是有必要的

要对增量代码覆盖率进行统计,目前大致有两个思路,修改jacoco源码和改造全量覆盖率结果

1、修改jacoco源码,使得其只支持对增量代码进行统计

(1)获取测试完成后的exec文件     此文件为二进制文件,里边包含有覆盖率信息

(2)获取基线去当前版本代码之间的差异

(3)切割差异代码为更小的颗粒,例如方法或者类等,可以尽量切割的小一点

(4)改造jacoco,使它支持仅对差异代码生成覆盖率报告

2、不修改jacoco,修改全量覆盖率报告,使得其仅显示增量代码报告部分

(1)获取测试完成后的exec文件,并生成覆盖率报告

(2)获取两个版本之间的差异代码,使用git diff命令

(3)解析差异代码,切割代码为更小的颗粒,此次切割最小单位为方法

(4)根据差异代码文件获取增量代码修改文件名、服务名、类名、方法名以及修改内容所在行数

(5)在全量覆盖率报告中根据文件名、服务名、类名、方法名修改报告中的内容,删除未修改的内容信息,仅保留增量代码对应的报告内容

标签:覆盖率,代码,全量,增量,jacoco,统计
From: https://www.cnblogs.com/xiaoyanguniang/p/16631660.html

相关文章

  • javascript脚本应该写在代码的什么地方
    javascript脚本应该写在代码的什么地方_百度知道 https://zhidao.baidu.com/question/981893155394447739.htmlcmvibahy2013-10-10 · TA获得超过4116个赞关注 ......
  • 关于代码效率优化的事情
    最近要上线代码,然后我在本地运行我的程序我:一般本地cpu跑程序大概效率需要达到多少?同事大哥:maybe70it/s我运行了一下我的程序显示:runningtimeis12s/70it.......wh......
  • 第二章-编写紧密耦合的代码
    正如我们在第一章中提到的,酱汁是一种由蛋黄和黄油制成的乳化酱汁,但这并不能神奇地灌输给你制造酱汁的能力。学习的最好方法是实践,但一个例子往往能弥合理论和实践之间的鸿......
  • 低代码平台amis学习 一:部署+初步试用
    之前用django+vue写过一个数据构造平台:通过把业务逻辑接口在后台串起来,前端暴露简要的一个字段,来帮助自己快速构造数据在平时业务测试过程中,这个平台使用的还是挺频繁的......
  • axis自动生成java代码
    假设axis的文件夹路径为:D:\project\axis-1_4在这个目录根目录下放需要生成java的wsdl文件,然后建立一个xxx.bat文件,内容如下:setAXIS_HOME=D:\project\axis-1_4setCLAS......
  • 不登录的前提下,如何复制csdn代码
    按F12。部分电脑需要Fn+F12。点开上方的console,即控制台。复制命令:document.body.contentEditable="true",然后回车。再按一次F12,退出源代码检查模式......
  • B站路飞学IT爬虫案例之梨视频板块视频扒取案例代码及分析
    fromlxmlimportetreeimportrequestsimportrandomimportosimporttimefrommultiprocessing.dummyimportPool#高性能异步爬虫#多进程,多线程异步爬虫(不推荐)#好......
  • git在pull/push代码时,需要用户名密码或密钥publickey
    问:git在pull(拉)/push(推)代码时,有的时候需要输入用户名,有的时候需要用密钥,怎么回事呢?答:是因为用gitremote设置远程仓库时候用了htts或ssh不同访问方式造成的。1.用h......
  • react中CodeMirror (代码编辑器)
    前言:实现一个在react项目中页面展示代码编辑器的效果。codemirror:使用JavaScript为浏览器实现的多功能文本编辑器。codemirror作用:专门用于编辑代码,并带有实现......
  • 生产环境自动备份win服务器所有web项目(IIS+项目代码)
    @echooffrem功能:每月自动备份本服务器所有web项目rem日期:2022.3.10rem制作人:zlrem定义变量Y为备份时间:YYYYMMsety=%date:~0,4%%date:~5,2%rem备份IIS配置C:\Windo......