scala sbt 仅测试参数仅在 运行 来自 sbt shell 时才被拾取

scala sbt test-only parameters are only picked up when run from sbt shell

我用 "SlowTest" 标记标记了一些较慢的 运行ning 测试。当我 运行 通过以下命令从 sbt shell 我的测试套件时:

test-only * -- -l com.company.tags.SlowTest

'SlowTest' 测试不是 运行。但是,当我尝试通过 bash shell 进行相同操作时:

sbt test-only * -- -l com.company.tags.SlowTest

所有测试都是 运行,包括我试图过滤掉的慢测试。我在这里错过了什么?

sbt 将每个命令行参数视为 运行 的单独目标。您只需要引用您希望 运行 的每个单独命令,这意味着您提供的所有参数:

sbt "test-only * -- -l com.company.tags.SlowTest"