2016-09-14 1 views
3

Когда я запускаю модульные тесты для моего проекта sbt (с sbt clean coverage test), я получаю покрытие кода ~ 77%.Можно ли установить минимальный уровень покрытия для комбинированных испытаний и интеграции?

Когда я запускаю интеграционные тесты (sbt clean coverage it:test), я получаю покрытие кода ~ 10%.

Когда я запускаю оба (sbt clean coverage test it:test), я получаю покрытие кода ~ 84%.

Я хотел бы установить агрессивный минимум покрытия кода и не строить, если он не встретил, но если добавить их строить настройки:

coverageMinimum := 83 
coverageFailOnMinimum := true 

... а затем запустить sbt clean coverage test it:test, минимальный охват проверяется после модульных тестов, прежде чем интеграционные тесты могут работать и строить не удается:

[error] Coverage is below minimum [77.0% < 83.0%] 

Если я ставлю перед тем it:testtest, это еще хуже ([10.0% < 83.0%]).

Есть ли какой-либо способ указать, что минимум 83% должен применяться только после того, как будут проведены тесты на единицу и интеграцию? Или я обречен устанавливать минимальный охват, отвечающий только моим модульным тестам, и всегда помню, чтобы поставить test до it:test в командной строке?

ответ

2

Автоматическая минимальная проверка покрытия после испытаний была удалена в версии 1.3.4 (см. Вопрос https://github.com/scoverage/sbt-scoverage/issues/132).

Upgrade версия плагина до последней 1.3.5 и вызвать coverageReport после всех испытаний, например .:

sbt clean coverage test it:test coverageReport

Смежные вопросы