我的应用程序有一个Maven测试项目。

JUnit测试运行良好,代码覆盖率测试也运行。

但是报告始终显示代码覆盖率的0%。

我应该怎么办?

最佳答案

根据官方网站,Eclemma是基于JaCoCo库的Eclipse的代码覆盖插件。

当您想在eclipse之外使用相同的代码覆盖引擎时,应在项目的Maven配置(pom)中包括Jacoco插件,如下所示(this code was copied from the Agile Engineering blog):

<build>
    <plugins>
        <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.6.0.201210061924</version>
            <executions>
                <execution>
                    <id>jacoco-initialize</id>
                    <goals>
                        <goal>prepare-agent</goal>
                    </goals>
                </execution>
                <execution>
                    <id>jacoco-site</id>
                    <phase>test</phase>
                    <goals>
                        <goal>report</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

要运行测试,只需在命令行工具上键入以下命令:
mvn clean test

附注:您还可以使用其他代码覆盖率插件,例如CoberturaEmma

10-08 01:24