Edited at

Scala: sbt+scalatestテストを並列実行する

More than 5 years have passed since last update.

build.sbtに下記のフラグを立てるだけで、テスト実行が並列化できる!


build.sbt

parallelExecution in Test := true


なお、並列実行したいテストスイートは ParallelTestExecution を継承する。

class StepSpec extends FlatSpec with ParallelTestExecution {

// ...
}

SharedNothingでStatelessなテストは並列実行にするといいかも。


並列数を指定する

並列数はCPUの数などから自動的に算出されるらしい。

並列数の指定を行う場合は、 build.sbt に明示する。

10並列にする例:


build.sbt

concurrentRestrictions in Global := Seq(

Tags.limit(Tags.Test, 10)
)