Как заставить Cobertura проваливать сборку M2 для низкого покрытия кода
Я пытаюсь настроить сборку проекта WAR так, чтобы она не работала, если покрытие линии или ветви ниже заданных пороговых значений. Я использовал конфигурацию, представленную на странице 455 превосходной книгиJava Power Tools, но безуспешно. Вот соответствующий фрагмент моего проекта Maven 2 POM:
<build>
...
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<check>
<!-- Per-class thresholds -->
<lineRate>80</lineRate>
<branchRate>80</branchRate>
<!-- Project-wide thresholds -->
<totalLineRate>90</totalLineRate>
<totalBranchRate>90</totalBranchRate>
</check>
<executions>
<execution>
<goals>
<goal>clean</goal>
<goal>check</goal>
</goals>
</execution>
<execution>
<id>coverage-tests</id>
<!-- The "verify" phase occurs just before "install" -->
<phase>verify</phase>
<goals>
<goal>clean</goal>
<goal>check</goal>
</goals>
</execution>
</executions>
<instrumentation>
<excludes>
<exclude>au/**/*Constants.*</exclude>
</excludes>
<ignores>
<ignore>au/**/*Constants.*</ignore>
</ignores>
</instrumentation>
</configuration>
</plugin>
...
</plugins>
...
</build>
Как я уже сказал, отчет о покрытии работает нормально, проблема в том, что цель «установки» не терпит неудачу, как это должно быть, если покрытие линии или ответвления ниже моих указанных порогов. У кого-нибудь это работает, и если да, то как выглядит ваш POM и какую версию Cobertura и Maven вы используете? Я использую Maven 2.0.9 и Cobertura 2.2.
Я пробовал Googling и читал документы Cobertura, но не повезло (последние малочисленны, если не сказать больше).