diff_cover 工具增量覆盖率统计工具报No lines with coverage information in this diff 错误解决

最近项目组想推增量测试覆盖度统计,让我先行调研相关工具。后来在github 上找到这个diff_cover工具,基于python2.7开发,支持解析多种工具生成的.Xml格式报告:

Cobertura (Java)

Clover (Java)

JaCoCo (Java)

coverage.py (Python)

JSCover (JavaScript)

因为已经部署好jacoco,此工具可以不用太大的改动下完成增量统计,故而选用他。

项目地址:

https://github.com/Bachmann1234/diff-cover

但是在部署过程中反复出现了一个问题,总报异常

No lines with coverage information in this diff

浏览各种博文也未果,没办法去看项目的源码,好在开发者各种注释清洗文件结构做的漂亮,很快就解决了,源码有这么一段:


0

可以很清楚看到该工具拿diff 是通过 

git diff ${版本号/分支名}...HEAD 


所以该diff 较的是你输入版本和当前工作区的差异。如果遇到了该问题,就去执行这个git 命令,看有没有差异,要么是你的版本号输的有问题,要么是你当前工作区的版本有问题,朝这个方向查就行。

git 命令执行正常情况应为如下图所示,列出两个版本的详细差异:

正常无误后执行:

diff-cover report.xml --html-report report.html --compare-branch ${版本号/分支名}


出现如图所示即为成功:

另外跟其他人沟通还有一个问题就是branch 名输错了。可以用以下名称查看分支名:

git branch -a

以及。。重要的事情说三遍:

                不支持windows 环境!

                不支持windows 环境!

                不支持windows 环境!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容