Есть ли еще решение для игнорирования сеттера / геттера (другие тривиальные методы) с помощью cobertura-maven-plugin? - PullRequest
17 голосов
/ 13 февраля 2012

Кто-то нашел хорошее решение для игнорирования тривиальных методов ?
Использование некоторых автоматических тестов, таких как Unitils, на самом деле не вариант, так как охват кода не должен увеличиваться, если только получатели /сеттеры проверены!

Использование cobertrua-maven-plugin версии 2.5.1 :
-) игнорирование методов не работает <ignore>com.company.*.set*</ignore>
-) кто-нибудь пыталсявключить патч типа http://sourceforge.net/tracker/index.php?func=detail&aid=3010530&group_id=130558&atid=720017 в плагин maven?
-) кто-нибудь использует другой (лучше?) тест-плагин?

Общее игнорирование для каждого get / set / is *Метод также не очень хороший способ, так как эти шаблоны могут быть использованы в других методах, но они похожи на методы получения / установки.Также должно быть легко угадать тривиальные геттеры / сеттеры / конструкторы.

Мне известен вопрос: Игнорировать методы в классе.плагин cobertura maven но так как он не получил соответствующих ответов, я подумал, что сделаю еще один выстрел.

Ответы [ 2 ]

13 голосов
/ 11 октября 2013

Начиная с Cobertura 2.0, есть переключатель для исключения тривиальных методов:

[История изменений Cobertura] Новый --ignoreTrivial переключатель, который говорит Cobertura игнорировать следующее в отчете о покрытии: методы получения, которые просто прочитать поле класса; Методы установки, которые устанавливают поле класса; Конструкторы, которые только устанавливают поля класса и вызывают супер конструктор класса.

Плагин cobertura-maven-plugin использует Cobertura 2.x начиная с версии 2.6 (см. примечания к выпуску ). Но я еще не нашел способ передать переключатель в конфигурацию плагина maven.


Несмотря на то, что, похоже, существует некоторая путаница в отношении состояния этой функции (см. Эту проблему Jira ), флаг, похоже, работает со следующей конфигурацией:

<groupId>org.codehaus.mojo</groupId>
<artifactId>cobertura-maven-plugin</artifactId>
<version>2.6</version>
<configuration>
  <instrumentation>
    <ignoreTrivial>true</ignoreTrivial>                 
  </instrumentation>
</configuration>
1 голос
/ 27 октября 2012

Проблема исключения была исправлена ​​здесь:

http://jira.codehaus.org/browse/MCOBERTURA-52

и является частью последней версии (2.5.2).Он доступен с 10 сентября 2012 года:

http://search.maven.org/#search|gav|1|g%3A%22org.codehaus.mojo%22%20AND%20a%3A%22cobertura-maven-plugin%22
...