我想通过标记执行一些sbt自定义任务来运行测试(scalatest)。例如:现在我可以在sbt控制台中运行它:
sbt test-only -- -n UnitTests
我想像
这样做sbt test-unit // or something like that
我也希望通过排除测试
来做同样的事情sbt test-only - -l ExternalTests
为:
sbt test-exclude-external
为了完成我正在尝试创建一个自定义的sbt任务...但我不知道如何做-- -l
的东西
val testUnit = taskKey[Unit]("Launch unit tests")
testUnit := {
// sbt test-only -- -n UnitTests
//(test in Test)
}
如果我可以在自定义sbt任务中按命名空间运行测试,那将非常有用:
sbt testOnly integration.actors.*
你能帮帮我们吗?我是sbt的新手:(
答案 0 :(得分:2)
fullInput与“in Test”不兼容。我终于这样做了:
val unit = taskKey[Unit]("Launch unit tests")
unit := {
(testOnly in Test).toTask(s" com.trololo.unit.*").value
}
答案 1 :(得分:0)
您应该可以使用此SO question中的fullInput
。
此外,可能重复this。