Wildfly 9 サーバーで Java Web アプリケーションを実行しており、jmeter-maven-pluginを使用して、アプリケーションの実行中のインスタンスでいくつかのパフォーマンス テストを実行しています。これらのテストは、アプリケーションのサービスに対して単純な REST 要求を実行します。
私がやりたいことは、パフォーマンス テストのコード カバレッジ統計を取得して、パフォーマンス テストでカバーされたコードの量を常に把握できるようにすることです。
this、this、およびthis StackOverflow スレッドに続いて、サーバーに JaCoCo Java エージェントをセットアップします。これは起動時のエージェント構成です
set "JAVA_OPTS=%JAVA_OPTS% -javaagent:/path/to/jacocoagent.jar=output=tcpserver,address=*,port=6300,includes=my.package.*"
また、実行情報を取得するためにサーバー上でダンプを実行できるようにするために、tests Maven プロジェクトでjacoco-maven-pluginを構成しました。
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.7.7.201606060606</version>
<configuration>
<destFile>${sonar.jacoco.itReportPath}</destFile>
<append>false</append>
</configuration>
<executions>
<execution>
<id>jacoco-dump</id>
<phase>verify</phase>
<goals>
<goal>dump</goal>
</goals>
<configuration>
<address>my.server</address>
<skip>${skipJMeterTests}</skip>
<!-- <reset>true</reset> -->
</configuration>
</execution>
</executions>
</plugin>
そのmvn verify
ため、すべてのパフォーマンス テストを実行すると (REST サービスが実際に呼び出されます)、JaCoCo プラグインがサーバーの jacoco.exec ファイルを正しくダンプしますが、実行mvn sonar:sonar
中のこのファイルを検査すると、サービスが実行されていてもコードのカバレッジは 0% になります。パフォーマンス テストによって呼び出されました。
何が問題なのですか?エージェントとプラグインのさまざまな構成を試しましたが、問題が解決しないようです。
ありがとうございました