Maven 2 から Maven 3 に切り替えた後、cobertura によって報告されたテスト カバレッジが 0% であることがわかりました。どのバージョンの cobertura と Surefire を使用するかについての質問を述べました: cobertura と Surefire プラグインのどのバージョンが maven3 の下で連携しますか?
ただし、問題をより深く調査したところ、どの構成フラグメントが機能していないかがわかりました。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.plugin.version}</version>
<configuration>
<forkMode>never</forkMode>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
<argLine>-Xmx512m -XX:MaxPermSize=256m</argLine>
</configuration>
</plugin>
forkMode を からnever
に変更するとonce
、テスト カバレッジが生成され始めました。つまり、問題はプラグインのバージョン非互換性自体ではなく、maven 3 の下で cobertura による Surefire のさまざまなフォーク モードによるサポートの問題でした。
それで、私の質問は、それはバグですか、それとも cobertura プラグインがそのような方法で設計されているため、一部では動作しませんかforkMode=never
?