Parallel JUnitでUnitテストの時間を減らそう!
さてみなさん、テストライフはいかがお過ごしですか。
最近私は、テストの時間を短くできないものか、考えることがあります。
そこでテストの並列化というのができないものか、探っていました。
テストの並列実行ということで、TestNGがありますが、XMLを書くことを前提としているため、ちょっとどうかと思っています。
そこでXMLを書かなくていいものはないかと探していたところ、Parallel JUnitというものを見つけました。
使い方は、JUnitのTestSuiteをParallelTestSuiteに置き換えるだけでできるという簡単なものです。
TestSuite suite = new ParallelTestSuite("Test for test"); suite.addTestSuite(Fuga.class); suite.addTestSuite(Hoge.class); TestRunner.run(suite());
これだけでFugaとHogeが並列で実行されます。
ものすごく簡単ですね。
しかし注意する点がありまして、JUnit3対応で、JUnit4から導入されたアノテーションが使えません。
それと、TestSuiteを使わなければならず、その辺が管理上やっかいになるかもしれません。
それらの欠点を補えるほど、Parallel JUnitはかなり強力じゃないかなと思っています。
ぜひ、有意義なテストライフを!