单元测试-代码覆盖率工具 -- JaCoCo

Posted 二郎那个三郎

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单元测试-代码覆盖率工具 -- JaCoCo相关的知识,希望对你有一定的参考价值。

  最近学习Mybatis的官方文档,看到了【项目文档】一节有很多内容没有见过,做个笔记,理解一下。

 

  随着敏捷开发的流行,编写单元测试已经成为业界共识。但如何来衡量单元测试的质量呢?有些管理者片面追求单元测试的数量,导致底下的开发人员投机取巧,编写出大量的重复测试,数量上去了,质量却依然原地踏步。相比单纯追求单元测试的数量,分析单元测试的代码覆盖率是一种更为可行的方式。JaCoCo(Java Code Coverage)就是一种分析单元测试覆盖率的工具,使用它运行单元测试后,可以给出代码中哪些部分被单元测试测到,哪些部分没有没测到,并且给出整个项目的单元测试覆盖情况百分比,看上去一目了然。EclEmma 是基于 JaCoCo 的一个 Eclipse 插件,开发人员可以方便的和其交互。因此,本文先从 EclEmma 入手,给读者一个直观的体验。

   参考: JaCoCo:分析单元测试覆盖率的利器

  

我在猜想这个eclipse插件的逻辑是:
    
    1. 每个程序文件对应一个线性数组,数组长度和行数对应。
    2. 然后,类似于开启debug模式,每执行一行,都会对数组相应行计数器加1.
    3. 最后,就是结果的展现,分eclipse和html版。
            根据每一行程序对应的计数器大小着色。

 

  

这个工具有哪些应用场景呢?

  1. 测试人员的绩效考核。所编写的单元测试代码,是否有很好的代码覆盖率。

 

 

 

  

 

 

 

 

 

以上是关于单元测试-代码覆盖率工具 -- JaCoCo的主要内容,如果未能解决你的问题,请参考以下文章

单元测试——jacoco单元测试代码覆盖率检测

Jacoco在eclipse上的集成使用

使用JaCoCo统计单元测试代码覆盖率

jacoco + eclipse单元测试覆盖率

jacoco+maven+sonar+springboot 单元测试代码覆盖率统计

Kotlin协程的Jacoco代码覆盖率不正确