Eclipse で複数の Specification を一括実行する

Spock を使い続けていくと、当然ですが Specification ファイルはどんどん増えていきます。
実は Spock には Junit のテストスイートのような機能はありません。
つまり、Spock 自身には 複数の Specification を一括で実行する機能はないのです。

でもそんな時に役に立つのが Eclipse に用意されている 複数のテストクラスを一括で実行する機能です。
これは もともと JUnit の為に用意された機能ですが、もちろん Spock でも利用できます。

やり方は簡単です。
通常 Specification を実行する場合 実行したい Specification ファイルで右クリックして [Run As] --> [JUnit Test] を選択しますよね。
それと同じことを パッケージやソースフォルダでやれば、そのパッケージもしくはソースフォルダ配下の すべての Specification を実行することができるのです。


例えば、com.bluepapa32 パッケージで実行すると com.bluepapa32 パッケージ配下の Specification (上の場合 HelloSpec と HelloSpec2) がすべて実行されます。
とっても便利ですね。すべての Specification を実行するのに 一つずつ Specification を選択して実行してたら日が暮れてしまいますよね。 Junit のテストクラスも同じように実行できるので ぜひ試してみてください。

もちろん Gradle のようなビルドスクリプトを使えば、何も考えなくても すべての Specification ファイルが 一括で実行されるので、こんなこと気にする必要もないんですけどね...