Edited at

Collisionを導入して数分でエラーレポートを見やすくしよう

More than 1 year has passed since last update.

めでたくLaravel5.6がリリースされました。

変更点は当然多々あるわけですが、このバージョンでCollisionというコマンドライン上のエラーレポートハンドラがプリインストールされるようになったようです。

Laravel 5.6 adds the Collision Package for CLI Error Reporting

logo (1).png

実際に使ってみるとこんな感じで表示されます。

example.png

良いなー使ってみたいなと思い、今開発しているプロジェクトがちょうど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 に記載するだけ。


phpunit.xml

<listeners>

<listener class="NunoMaduro\Collision\Adapters\Phpunit\Listener" />
</listeners>

簡単ですね。


Laravel以外のフレームワーク

下記コードを実装する。(試していないですが)

(new \NunoMaduro\Collision\Provider)->register();

これでテスト書いててこけまくって辛かった状態から早く抜け出せるように…なれるかもしれません。