Не понимаю, пытаюсь сгенерировать отчет о покрытии кода с помощью JaCoCo и Maven, самый простой.
В моем pom.xml есть следующий плагин:
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.version}</version>
<executions>
<execution>
<id>prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
<execution>
<id>post-unit-test</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<dataFile>target/jacoco.exec</dataFile>
<!-- Sets the output directory for the code coverage report. -->
<outputDirectory>target/my-reports</outputDirectory>
</configuration>
</execution>
</executions>
<configuration>
<systemPropertyVariables>
<jacoco-agent.destfile>target/jacoco.exec</jacoco-agent.destfile>
</systemPropertyVariables>
</configuration>
</plugin>
И когда я пытаюсь провести тест mvn, он ничего не делает. Даже не ошибка или что-то в этом роде. В моих тестах написано BUILD SUCESS, но Maven, похоже, не видит JaCoCo. Если я все равно попытаюсь выполнить mvn jacoco: report, у меня будет сообщение:Skipping JaCoCo execution due to missing execution data file.
Достаточно следующей конфигурации:
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.version}</version>
<executions>
<execution>
<id>prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Затем отчеты можно найти в target/site/jacoco/
Причины, по которым это не работает в вашем случае:
pluginManagement
profile
Также проверьте журнал maven при выполнении mvn test
для jacoco-maven-plugin
. Для получения дополнительной информации запуститеmvn -X test
Эта статья взята из Интернета, укажите источник при перепечатке.
Если есть какие-либо нарушения, пожалуйста, свяжитесь с[email protected] Удалить.
я говорю два предложения