PHP
PHPUnit
FuelPHP

FuelPHPでUnitテストが途中で止まる。

More than 1 year has passed since last update.

いままでJavaしか扱ってこなかったのですが、転職しPHPを使うようになりました。
使っているフレームワークは「FuelPHP」なのですが、Unitテストでハマったので備忘録程度に記載します。

使っているもの

PHP 5.6
FuelPHP 1.8
PHPUnit 5.5.7
aspect-mock 1.0.0

起きたこと

 pho oil test -group=App を実行するが、途中で止まる。

$ php oil test -group=App
Tests Running...This may take a few moments.
PHPUnit 5.5.7 by Sebastian Bergmann and contributors.

.... 
↑ 12ケースあるのに、5ケースで止まって終了する。結果も表示されない。

原因

 Controller内でRedirectが実行されていたため。
 (Redirectの内部ではexit()が呼び出されている)

対策

 以下のページを参考に対応しました。
 https://qiita.com/tuttieee/items/a140fb0b5c4e67386ea3

対応結果

ちゃんとテストできるようになりました!

Tests Running...This may take a few moments.
PHPUnit 5.5.7 by Sebastian Bergmann and contributors.

............                                                      12 / 12 (100%)

Time: 2.06 seconds, Memory: 21.75MB

OK (12 tests, 12 assertions)