2016-12-14 7 views
0

При использовании cobertura-maven-plugin для Java я получаю хороший блок <instrumentation> в конфигурации, где я могу разместить невероятно полезный блок <ignoreMethodAnnotation>.Как настроить привязку при использовании SBT?

Лучшее, что может случиться с покрытием с мартини джина.

Теперь я использую scoverage-sbt, но я не могу найти, где я могу его настроить! Доступные ключи в build.scala ограничены. Я могу сделать исключение пакетов и исключение файлов, но нигде не сообщать кобертуре.

Есть ли -D я могу поставить на командную строку SBT, может быть?

ответ

0

Аналогичной конфигурации в банкомате Scoverage нет.

обновление:

Вы можете использовать специальные комментарии, чтобы исключить блок кода из приборов:

// $COVERAGE-OFF 
... 
// $COVERAGE-ON$ 
+0

Я знаю, это - проблема в том, что это во всех профилях испытаний, в то время как с аннотацией, можно выделить блок как переменный ток в одном тестовом профиле, а не в другом. Таким образом, я мог бы иметь '@ ExcludeFromUnitTesting' и' @ ExcludeFromIntegrationTesting', и они будут вести себя надлежащим образом. С $ COVERAGE_OFF $ нельзя отличить. –

0

Один способ передачи параметров и команд в SBT из командной строки:

$ sbt 'set coverageEnabled := true' clean coverage test coverageReport coverageAggregate codacyCoverage 

Если вы вызываете SBT один раз, а затем разделяете каждый параметр или команду пробелом.

В этом примере я установить свойство coverageEnabled := true, а затем запустить несколько команд в последовательности: clean, coverage, test, coveraReport, coverageAggregate и, наконец, codacyCoverage

Пожалуйста, обратите внимание, что установка свойства, как это требует, чтобы вы заключите заявления в одинарных кавычках, например:

$ sbt 'set coverageEnabled := true'... 
Смежные вопросы