具有多模块Maven项目的JaCoCo-仅记录模块拥有的测试的覆盖范围

时间:2019-01-30 12:01:18

标签: maven jacoco jacoco-maven-plugin

我们有一个包含约50个模块的大型Maven项目。今天,我们有了一个很好的设置,可以在整个项目中获得JaCoCo的综合报道。我们还将JaCoCo生成的最终二进制文件用于自定义覆盖逻辑。

我们希望实施更严格的覆盖率政策,其中同一模块中的 only 测试有助于整体覆盖率。我们希望每个模块都要负责自己的测试和覆盖范围。

例如。模块A依赖于模块B。A具有使用B中代码的代码。运行A中的测试时,我们希望记录B中任何类的覆盖率。

可以进行此设置吗?尝试一下,我发现JaCoCo在生成最终报告时有很多过滤选项,但是我想在第一步是收集覆盖率时执行此操作。

最终,我想在每个模块的目标目录中得到一个JaCoCo exec文件,该文件仅具有从其自己的模块记录的类。如果我们必须在逐个模块的基础上进行一些配置,例如具有包含在内的显式包表达式,那将是非常好的。

1 个答案:

答案 0 :(得分:0)

  

尝试一下,我发现JaCoCo在生成最终报告时有很多过滤选项,但是我想在第一步是收集覆盖率时进行过滤。

在收集过程中还有用于过滤的选项-see includes and excludes options of JaCoCo Java Agentcorresponding options of prepare-agent in jacoco-maven-plugin

Build of JaCoCo itself uses them正是为此。