11

我想生成并查看 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

4 回答 4

19

这在构建部分:

<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 。

于 2013-02-21T05:44:35.823 回答
6

看看插件的文档,有一个例子。很确定您必须添加一个<reporting>元素才能实际生成报告。

于 2011-05-18T13:52:57.970 回答
0

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

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

于 2020-01-16T18:42:09.323 回答
-1

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

当我以 html 和 xml 发布我的报告时,这太棒了

于 2017-06-03T13:50:25.817 回答