Я хотел бы настроить sbt-assembly
для пропуска определенного тестового класса.
Есть какой-либо способ сделать это? Если это поможет, я пометил тест тегом ScalaTest @Network
.
Я хотел бы настроить sbt-assembly
для пропуска определенного тестового класса.
Есть какой-либо способ сделать это? Если это поможет, я пометил тест тегом ScalaTest @Network
.
См. Дополнительные тестовые конфигурации с общими источниками. Это позволяет вам придумать альтернативную «тестовую» задачу в конфигурации FunTest
при повторном использовании вашего тестового источника.
После того, как fun:test
будет работать с любым фильтром, который вы определили с помощью testOptions in FunTest := Seq(Tests.Filter(itFilter))
, вы можете перемонтировать
test in assembly := test in FunTest
Юджин прав (очевидно), но мне не хватило информации, чтобы заставить его работать - у меня есть файл build.scala
. Я определяю baseSettings
следующим образом:
val baseSettings = Defaults.defaultSettings ++
buildSettings ++
Seq(sbt.Keys.test in assembly := {})
Вы можете пометить свои тесты ignore
, тогда sbt/ScalaTest не будет их запускать. См. документацию по ScalaTest в разделе маркировка тестов.
Для полноты картины: если вы хотите пропустить все тесты в задаче сборки или запустить только определенные, вы можете настроить его с помощью test in assembly := { ... }
sbt-assembly
: пусть мой тест будет называться VerySlowTest
, не могли бы вы привести пример того, как настроить sbt-assembly
для игнорирования этого теста? 19.03.2014 ignore
к тесту в определении теста (см. ссылку, которую я дал на документы ScalaTest). Я не могу просто показать вам код, потому что это зависит от того, как вы определите свой тест. Во всяком случае, я думаю, что @eugene-yokota уже предложил лучшее решение. 19.03.2014 Основываясь на ответе @eugene-yokata, я нашел, как использовать флаг из ScalaTest:
lazy val UnitTest = config("unit") extend (Test)
lazy val companyApp = (project in file("applications/"))
.assembly("com.company.app", "app.jar")
.configs(UnitTest)
.settings(
inConfig(UnitTest)(Defaults.testTasks),
UnitTest / testOptions ++= Seq(
Tests.Argument(
TestFrameworks.ScalaTest,
"-l",
"com.company.tag.HttpIntegrationTest"
),
Tests.Argument(
TestFrameworks.ScalaTest,
"-l",
"com.company.tag.EsIntegrationTest"
)
),
test in assembly := (UnitTest / test).value
)