自分への備忘録を兼ねて。
はじめに
プロジェクトで Phing を利用してPHPUnitを実行していくと、テストケースの数が多くなってきて実行時間が問題になるというのはよくあることだと思います。
こちら にもあるように @groupアノテーション を使って必要なケースのみを実行するというのも考えたのですが、テストの実行数を減らさずに解決する方法がないか考えた結果、テストを並列で実行した上で、テスト結果のログをマージする方法を考えてみました。
コードカバレッジのマージについては こちらの投稿 があったので、JUnit XML形式で出力されたログをマージする方法を書いておきます。
必要なこと
merge-phpunit-xml.php を導入する。
以上。
補足というか言い訳
「phpunit log xml merge」でググったところ、PHPUnitの開発者であるSebastian Bergmann氏自身が投稿したGistを見つけたため、大きな工夫をする必要も無く実現出来てしまいました:D
その他
ということで、ログのマージができるようになったので、テストの並列実行が実現出来るようになったら、こちらについても書いてみたいと思います。