めでたくLaravel5.6がリリースされました。
変更点は当然多々あるわけですが、このバージョンでCollisionというコマンドライン上のエラーレポートハンドラがプリインストールされるようになったようです。
Laravel 5.6 adds the Collision Package for CLI Error Reporting
実際に使ってみるとこんな感じで表示されます。
良いなー使ってみたいなと思い、今開発しているプロジェクトがちょうどLaravel5.5、PHP7.2で開発中なので早速試してみました。
実際に導入してみると、たしかに見やすく、どんなところでエラーになっているかがわかりやすくなっていて作業がだいぶしやすくなりました。
導入も簡単なので、Laravel5.6以前でも条件が合う人は導入したほうが良いと思います。
使える環境と導入方法をまとめておきます。
使える環境・バージョン
READMEを見てみると、Laravel ArtisanとPHPUnitをサポートしています。
Laravelじゃなくても使えるようですが、試していないです。
対応バージョンは下記。
- PHP7.1以上
- PHPUnit6.0以上
インストール
composerを使って入れます。簡単ですね。
$ composer require nunomaduro/collision --dev
設定
Laravel
auto-dicovery
が設定されているので、インストールすれば即使えます。
Collision Is An Error Handler Framework for Console Applications
PHPUnit
下記を phpunit.xml
に記載するだけ。
<listeners>
<listener class="NunoMaduro\Collision\Adapters\Phpunit\Listener" />
</listeners>
簡単ですね。
Laravel以外のフレームワーク
下記コードを実装する。(試していないですが)
(new \NunoMaduro\Collision\Provider)->register();
これでテスト書いててこけまくって辛かった状態から早く抜け出せるように…なれるかもしれません。