У нас есть мультипроект, который мы пытаемся запустить в отчет о покрытии тестов Cobertura в рамках нашей сборки сайта mvn. Я могу заставить Cobertura работать над дочерними проектами, но он ошибочно сообщает о 0% охвате, хотя в отчетах все еще выделяются строки кода, которые были затронуты юнит-тестами.
Мы используем mvn 2.0.8. Я попытался запустить mvn clean site
, mvn clean site:stage
и mvn clean package site
. Я знаю, что тесты запущены, они отображаются в отчетах верности (как в txt / xml, так и в отчетах сайта). Я что-то упустил в конфигурации? Разве Cobertura не работает правильно с мультипроектами?
Это в родительском .pom:
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<inherited>true</inherited>
<executions>
<execution>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<inherited>true</inherited>
</plugin>
</plugins>
</reporting>
Я пытался запустить его с и без следующего в дочернем .poms:
<reporting>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
</plugin>
</plugins>
</reporting>
Я получаю это в выводе сборки:
...
[INFO] [cobertura:instrument]
[INFO] Cobertura 1.9 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Instrumenting 3 files to C:\workspaces\sandbox\CommonJsf\target\generated-classes\cobertura
Cobertura: Saved information on 3 classes.
Instrument time: 186ms
[INFO] Instrumentation was successful.
...
[INFO] Generating "Cobertura Test Coverage" report.
[INFO] Cobertura 1.9 - GNU GPL License (NO WARRANTY) - See COPYRIGHT file
Cobertura: Loaded information on 3 classes.
Report time: 481ms
[INFO] Cobertura Report generation was successful.
И отчет выглядит так: