如何使用Cobertura Maven插件查看HTML覆盖率报告?

时间:2011-05-18 13:46:23

标签: java maven code-coverage cobertura

我想生成并查看Java-Maven项目的覆盖率报告。

我已将以下内容添加到pom.xml

<reporting>
  <plugins>
    <plugin>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>cobertura-maven-plugin</artifactId>
      <version>2.2</version>
      <configuration>
        <formats>
          <format>html</format>
        </formats>
      </configuration>
    </plugin>
  </plugins>
</reporting>

当我运行mvn cobertura:cobertura时,它会成功构建并向控制台报告Cobertura Report generation was successful,但我找不到该报告。

如果我cd进入target/cobertura,我会找到一个名为cobertura.ser的文件,但我不知道如何处理它。

修改:重新检查文档后,感谢Andreas_D,我添加了<reporting>标记,但得到了相同的结果。

4 个答案:

答案 0 :(得分:19)

这在Build部分:

<build>
    ...
    <plugins>
        ...    
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>cobertura-maven-plugin</artifactId>
            <version>2.5.2</version>
        </plugin>
        ...
    </plugins>
    ...
</build>

然后在报告部分:

<reporting>
    ...
    <plugins>
        ... 
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>cobertura-maven-plugin</artifactId>
            <version>2.5.2</version>
            <configuration>
                <check></check>
                <formats>
                    <format>html</format>
                    <format>xml</format>
                </formats>
            </configuration>
        </plugin>
        ...
    </plugins>
    ...
</reporting>

执行mvn cobertura:cobertura

然后在 target / site / cobertura / 文件夹中查找 index.html

答案 1 :(得分:6)

查看插件的文档there's an example。非常确定您必须添加<reporting>元素才能实际生成报告。

答案 2 :(得分:0)

我刚刚在我的项目中尝试过,您还可以执行以下操作:

a)运行mvn cobertura:cobertura
b)它应生成一个名为“ site”的文件夹
c)您可以在任何浏览器中打开index.html(在site / sobertura文件夹中)并检查覆盖率的结果。

答案 3 :(得分:-1)

如果无效 - 试试这个 http://technikes.com/how-to-generate-code-coverage-report-in-java-jacoco-graphical-report/您可以获得html和xml格式的代码覆盖率报告

当我在html和xml

中发布我的报告时,这太棒了