我有一个简单的Scala 2.11.8 + ScalaTest 3.0.1 + SBT项目。
我想运行一个ScalaTest Suite类。我创建了一个简单的示例测试套件org.example.TestSuite
:
package org.example
import org.scalatest.FunSuite
class TestSuite extends FunSuite {
test("just a simple example test") {
assert(1 + 1 === 2)
}
}
我可以完全正确地将它与IntelliJ分开运行。
当我尝试在命令行上单独运行它时:
sbt test-only org.example.TestSuite
这会运行我的所有测试。
我在这里查看文档:{{3}}
它说要做我正在做的事情,test
运行一切,而test-only <qualified suite class names>
只运行指定的套件。但是,它只是不起作用。
这看起来非常简单,但它不能正常运行并运行所有测试。谢谢!
答案 0 :(得分:1)
在命令行中,SBT将通过将命令和参数括在引号中来获取带有诸如你的参数的命令:
sbt 'test-only org.example.TestSuite'
如果您输入SBT的命令行,那么您不需要指定引号,只需按以下命令运行:
$ sbt
> test-only org.example.TestSuite
请注意,最后一个示例是如何使用您发布的文档链接中的示例。
另请注意,在最近的SBT versions such as 0.13中,命令调用已更改为testOnly
。