phpunitは私にはもう欠かせないツールなのですが、その実行をよりビジュアルに表示してくれるツールを見つけました。その紹介です。

通常は、以下のようにコマンドラインで実行すると、

$ vendor/bin/phpunit

赤字のFFailureの失敗です。テスト数が多いと少ない表示で便利なのですが、どこでFなのかは最後まで待たないと判りません。

$ vendor/bin/phpunit --stop-on-failure

としてエラーがあったらそこで止まるというオプションもあります。しかし他のエラーもあるかもしれないし、1個のエラーを修正してまた再度テスト実行では、テストの数が多いとまどろっこしい。

$ vendor/bin/phpunit --testdox

このオプションでは以下のように実行したテストのそれぞれの詳細を出力してくれます。

いい感じですが、出力が多くてテストの数が多いと画面をスクロールするのが面倒になります。

中間というものはないかな、と調べたら、ありました。

CodeDungeon PHPUnit Pretty Result Printer

という名前のパッケージで、以下のgithubにレポジトリがあります。

https://github.com/mikeerickson/phpunit-pretty-result-printer

インストールには、以下を実行します。開発だけで使用なので、–devのオプションを忘れずに。

$ composer require --dev codedungeon/phpunit-result-printer

次に、以下を実行すると、

$ php ./vendor/codedungeon/phpunit-result-printer/src/init.php

phpunit.xmlに、printerClass="Codedungeon\PHPUnitPrettyResultPrinter\Printer"を追加して、設定ファイル、phpunit-printer.ymlを作成します。

さて、これで再度phpunitを実行すると、

なかなか見やすいですね。

By khino