CodeIgniter標準のテストは貧弱なのでPHPUnitが使える実装を探していました。
いくつかあるようなのですが、公式forumで検索すると以下が出てきました。
CI PHPUnit Test for CodeIgniter 3.0
ci-phpunit-test
kenjis/ci-phpunit-test
おすすめ要素としては
・CodeIgniter3準拠
・Product Ownerが日本人(kenjis)
FuelPHPの本書いている鈴木さんなので安心です。
pull requestも速攻取り込んで改良もしてくれました。
これ読んでないけど、そのうち読んでみようと思います。
- 作者: 鈴木憲治
- 出版社/メーカー: ラトルズ
- 発売日: 2014/10/25
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
ちなみにPRの内容は
404/500 をテスト可能にするようにしました。
routingのエラーケースを書こうとしたら、testできなくて困っていました。
CodeIgniter本体のソース見て驚いたのですが
盛大にexit してて、うわーthe PHP だなぁと思いました。
余談ですが、どうやらexitを取り除くPRを本体に出したそうなんですがrejectされたようです。
対応方法としては、
強引なやり方ですが、テスト時に404/500 をoverrideしてExceptionを投げるようにして
テストできるようにしています。
結論
CodeIgniter使ってる人もテスト書こうぜ。
PHPUnit はいいやつですよ。(PHPUnitいいね - rochefort's blog)