mvn サイト構築の一環として、Cobertura テスト カバレッジ レポートを実行しようとしているマルチプロジェクトがあります。子プロジェクトで Cobertura を実行することはできますが、ユニット テストでヒットしたコード行がレポートで強調表示されているにもかかわらず、誤って 0% のカバレッジがレポートされます。
mvn 2.0.8 を使用しています。mvn clean site
、mvn clean site:stage
および を実行してみmvn clean package site
ました。テストが実行されていることはわかっています。それらは確実なレポート (txt/xml とサイト レポートの両方) に表示されます。構成に何か不足していますか? Cobertura はマルチプロジェクトで正しく動作しませんか?
これは親 .pom にあります:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<inherited>true</inherited>
<executions>
<execution>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<inherited>true</inherited>
</plugin>
</plugins>
</reporting>
子.pomsで次のものを使用して、または使用せずに実行してみました:
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
</plugin>
</plugins>
</reporting>
ビルドの出力でこれを取得します。
...
[INFO] [cobertura:instrument]
[INFO] Cobertura 1.9 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Instrumenting 3 files to C:\workspaces\sandbox\CommonJsf\target\generated-classes\cobertura
Cobertura: Saved information on 3 classes.
Instrument time: 186ms
[INFO] Instrumentation was successful.
...
[INFO] Generating "Cobertura Test Coverage" report.
[INFO] Cobertura 1.9 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Cobertura: Loaded information on 3 classes.
Report time: 481ms
[INFO] Cobertura Report generation was successful.
レポートは次のようになります。