Есть ли способ получить покрытие кода с помощью JaCoCo с tomcat7-maven-plugin встроенный экземпляр?
Плагин jacoco-maven сконфигурирован в моей WAR POM для тестирования моих модульных тестов, но я не уверен, как подключить jacoco-агент к встроенному экземпляру Tomcat для тестирования моих интеграционных тестов, которые выполняются против Tomcat. Учитывая, что экземпляр Tomcat встроен, я не уверен, возможен ли этот подход. Есть ли другой способ сделать это? Возможно, я могу перейти от использования модуля Tomcat Maven Plugin к использованию Cargo, чтобы получить покрытие, но я предпочел бы придерживаться плагина Tomcat, если это возможно.
Вот несколько соответствующих фрагментов из моего POM:
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.6.2.201302030002</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.14</version>
<executions>
<execution>
<id>integration-tests</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<systemProperties>
<!-- as expected, this system property doesn't work since Tomcat is embedded, but this is the type of config I'm looking for -->
<JAVA_OPTS>-javaagent:${project.build.directory}/${jacoco.jar}=destfile=${project.build.directory}/jacoco.exec,append=true</JAVA_OPTS>
</systemProperties>
</configuration>
<executions>
<execution>
<id>tomcat-startup</id>
<goals>
<goal>run-war-only</goal>
</goals>
<phase>pre-integration-test</phase>
<configuration>
<fork>true</fork>
</configuration>
</execution>
<execution>
<id>tomcat-shutdown</id>
<goals>
<goal>shutdown</goal>
</goals>
<phase>post-integration-test</phase>
</execution>
</executions>
</plugin>
Версии: Maven 3.0.4, Tomcat Maven Plugin 2.1, Jacoco 0.6.2.201302030002, Java 7