Запустите Cobertura на xtext-проекте вместе с Maven и Tycho-surefire
У меня есть многомодульный проект с одним модулем тестирования, который тестирует три других. Я уже настроил инструментарий cobertura, объединение и создание отчетов с помощью описанного здесь maven antrun-plugin: cobertura в мультимодульном проекте maven, но я не переопределяю нормальные классы с инструментальными, но храню их в папке инструментоваемых классов в каждом модульное. На этапе тестирования после интеграции я объединяю файлы cobertura.ser и генерирую отчет в файле pom.xml модуля тестирования, который выполняется последним.
Как я могу настроить tycho-surefire для использования инструментированных классов вместо обычных? В противном случае я всегда получаю 0% покрытия...
Я не нашел легкого решения, cobertura: совокупная цель не работает
1 ответ
Вместо этого я использовал Jacoco, это сработало для меня.
<!-- This profile is used to gather code coverage with Jacoco -->
<profile>
<id>codeCoverage</id>
<properties>
<!-- Properties to enable jacoco code coverage analysis -->
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
<sonar.jacoco.reportPath>/path/to/jacoco.exec</sonar.jacoco.reportPath>
</properties>
<build>
<plugins>
<!-- Enabling use of jacoco -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco-plugin-version}</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<!-- Where to put jacoco coverage report -->
<destFile>${sonar.jacoco.reportPath}</destFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>