无法从命令行使用 org.scalatest.tools.Runner 运行测试



我把我的测试编译在一个目录中:samplesuite当使用org.scalatest.run运行一个套件时,它有效。当我尝试运行包含多个套件的目录时,没有任何反应。

scala -cp "..mytestframeworktargetscala-2.12mytestframework-assembly-0.1.jar;../../Downloads/scalactic_2.12-3.0.5.jar;....Downloadsscalatest_2.12-3.0.5.jar" org.scalatest.run samplesuite.SomeSpec

但它在尝试时不会运行:

    scala -cp "..mytestframeworktargetscala-2.12mytestframework-assembly-0.1.jar;../../Downloads/scalactic_2.12-3.0.5.jar;....Downloadsscalatest_2.12-3.0.5.jar" org.scalatest.tools.Runner -R samplesuite

假设测试是在包samplesuite中定义的,例如

package samplesuite
class SomeSpec extends FlatSpec with Matchers

当前工作目录.samplesuite高一级,然后发现并运行所有套件

scala -cp "..mytestframeworktargetscala-2.12mytestframework-assembly-0.1.jar;../../Downloads/scalactic_2.12-3.0.5.jar;....Downloadsscalatest_2.12-3.0.5.jar" org.scalatest.tools.Runner -R .

通常,在指定从中发现测试的运行路径时,-R指向包开始的目录,或使用sbt test:package生成的.jar文件:

scala -cp target/scala-2.12/classes:scalatest_2.12-3.0.5.jar:scalactic_2.12-3.0.5.jar org.scalatest.tools.Runner -R target/scala-2.12/test-classes
scala -cp target/scala-2.12/classes:scalatest_2.12-3.0.5.jar:scalactic_2.12-3.0.5.jar org.scalatest.tools.Runner -R target/scala-2.12/how-can-i-perform-an-or-with-scalatest_2.12-0.1.0-SNAPSHOT-tests.jar

最新更新