compiletime というプロジェクトで、テストライブラリの選択や Scala の機能がコンパイル速度にどのように影響を与えるか計測した話。著者は ScalaTest の作者なので何かしらバイアスがかかっているのかもしれないが、(specs2 が遅いという)結果には体感的に納得感がある。 JUnit、TestNG、ScalaTest、specs2 が対象。 コンパイルが速い順番に JUnit、TestNG、ScalaTest で、specs2 はとても遅い。 コンパイル時間は以下に影響を受ける: スコープ中の implicit の数 by-name パラメータの数 テストクラスのメソッドが trait によって提供されるか、親クラスから継承されるか implicit に関しては、スコープに import された implicit の数とスコープ中の implicit の使用の数の積に依