我Test.scala
有 2 个我想并行运行的测试。
C:/users/Kevin/workspace/playApp> sbt 测试
class ConcurrentRequests extends FunSuite with BeforeAndAfterAll with ParallelTestExecution {
val start = System.nanoTime()
test("foo") {
println("foo")
foo
println("foo in " + (System.nanoTime - start) / 1000000000 + " seconds.")
}
test("bar") {
println("bar")
bar
println("bar in " + (System.nanoTime - start) / 1000000000 + " seconds.")
}
}
我尝试了这篇文章的答案,即添加testOptions
到我的$PLAY_APP/build.sbt
, 以及使用该-P
选项,但都没有奏效。我说它不起作用,因为“foo”打印出来,执行了它的调用,然后 bar 打印出来并在.
如何通过 sbt 并行运行这个 Play 测试?
编辑
作为一种解决方法,我将第一个测试放在ConcurrentTest.scala中,将第二个测试放在单独的ConcurrentTest2.scala文件中。然后 ScalaTest 并行运行测试。从维护的角度来看,我宁愿有一个测试文件,然后并行运行它们中的每一个。