Если вы хотите измерить покрытие кода, вы должны использовать Jacoco. Он также позволяет измерять модульные тесты и интеграционные тесты.
Все, что вам нужно сделать, это добавить: зависимые пакеты
<dependency>
<groupid>org.jacoco</groupid>
<artifactid>org.jacoco.core</artifactid>
<version>0.6.2.201302030002</version>
<scope>test</scope>
</dependency>
и добавить jacoco-Maven-плагин. Обратите внимание, что если вы не будете использовать сонар, то вам придется заменить $ {} sonar.jacoco.reportPath свойства с сырыми пути к файлу
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.6.2.201302030002</version>
<executions>
<!-- prepare agent for measuring unit tests -->
<execution>
<id>prepare-unit-tests</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<destFile>${sonar.jacoco.reportPath}</destFile>
</configuration>
</execution>
<!-- prepare agent for measuring integration tests -->
<execution>
<id>prepare-integration-tests</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<phase>pre-integration-test</phase>
<configuration>
<destFile>${sonar.jacoco.itReportPath}</destFile>
<propertyName>itCoverageAgent</propertyName>
</configuration>
</execution>
</executions>
</plugin>
Если вы хотите также использовать гидролокатор, а затем указать такие свойства:
<properties>
<!-- select JaCoCo as a coverage tool -->
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<!-- force sonar to reuse reports generated during build cycle -->
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<!-- set path for unit tests reports -->
<sonar.jacoco.reportPath>${project.basedir}/target/jacoco-unit.exec</sonar.jacoco.reportPath>
<!-- all modules have to use the same integration tests report file -->
<sonar.jacoco.itReportPath>${project.basedir}/../target/jacoco-it.exec</sonar.jacoco.itReportPath>
</properties>
Вы можете найти более подробную информацию о http://www.kubrynski.com/2013/03/measuring-overall-code-coverage-in.html
Maven очень хороший инструмент для сборки. Есть ли какая-то конкретная причина для поиска нового инструмента? .. –
Я хочу знать, как измерить его для построения кода, используя Maven. – user3193257
Инструмент .war файл ??? Обычно вы запускаете тест maven в своем проекте, если 100% -ный проход проходит, то приступите к пакету mvn, который будет строить ваш военный файл. Покрытие кода соответствует уровню тестирования maven. Вы можете хранить отчеты html, интегрировать статистику и только перейти к шагу пакета, если говорят, что строки покрыты> 90%. Я использую cobertura в своих проектах Grails, Emma на моих проектах Java/groovy. Очень просто установить/использовать. Не изобретайте колесо! – shuttsy