我正在使用 eclipse + maven2 来构建我的应用程序。我需要开始使用三叶草。
因此,我的问题是:根据您的经验,将这 3 个结合起来的最佳方法是什么。
我的意思是,我知道 eclipse 有一个 clover 插件,maven2 也有一个 clover 插件,当然还有 eclipse 的 maven 插件(m2eclipse - 我已经在使用)。
我应该使用什么以及如何使用?
谢谢你。
在 Eclipse 下,使用Clover Eclipse Plugin。
在 Maven 下,使用Maven Clover Plugin。将Clover 报告添加到站点生成:
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<configuration>
[...]
</configuration>
<executions>
<execution>
<phase>pre-site</phase>
<goals>
<goal>instrument</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
[...]
<reporting>
<plugins>
[...]
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<configuration>
[...]
</configuration>
</plugin>
</plugins>
</reporting>
[...]
或者,您可以检查测试覆盖率百分比并在不合规的情况下使构建失败:
<build>
<plugins>
<plugin>
<groupId>com.atlassian.maven.plugins</groupId>
<artifactId>maven-clover2-plugin</artifactId>
<configuration>
<targetPercentage>80%</targetPercentage>
</configuration>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>instrument</goal>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Maven 构建仍然是主人。使用您喜欢的方法(命令行或 m2eclipse)运行它。
我正在使用 clover-report 以及 maven 的自动站点生成。为此,您只需将 clover 插件添加到您的 POM 报告部分,如此处所述。这样,您还可以获得有关代码覆盖率的历史报告。
调用/启动 maven 进程是通过 m2eclipse 插件完成的,就是这样。但您也可以使用所有 3 个插件。因此,例如为 eclipse 安装 clover 插件,这样当您只想要代码覆盖率时,您就不必一次又一次地生成整个站点(使用 eclipse 的 clover 插件,您可以在 eclipse 中看到覆盖率)并使用clover maven 插件为任何已发布的代码生成“最终”代码覆盖率。clover-maven 和 clover-eclipse 都不需要 m2eclipse 插件,但是在使用 eclipse 和 maven 时它很好。