ci-phpunit-test v0.9.0をリリースしました post

昨日(2015/11/18)、ci-phpunit-test v0.9.0をリリースしました。v1.0.0までもう少しです。

ci-phpunit-testとは?

CodeIgniter 3.0でPHPUnitをより簡単に使うためのブリッジツールです。

CodeIgniterには、Unit Testingクラスというのが標準で含まれているのですが、低機能すぎるという問題があり、あまりお薦めできません。

また、CodeIgniter 3.0からCodeIgniter本体のテストはPHPUnitで書かれており、CodeIgniter 4.0ではアプリのテストもPHPUnitになる予定です。

ということで、CodeIgniter 3.0でもPHPUnitでテストを楽に書きたいという人にお薦めのツールがこのci-phpunit-testになります。

私が知る限り日本にすでに7人のユーザがおり、実績も充分です(笑)

機能

現状の機能などをまとめてみました。

  • アプリケーションクラス(モデル、ライブラリやコントローラ)のオートローダ
  • コントローラの機能テスト
    • コントローラクラスの生成時にモックを注入可能
    • redirect()show_404()show_error()を簡単にテストできる
    • RESTコントローラを簡単にテストできる
  • モンキーパッチ機能(オプション)
    • exit()およびdie()を例外に変換
    • グローバル関数の動的な書き換え(制限あり)
    • ユーザ定義クラスのメソッドの書き換え(オブジェクトメソッドや静的メソッドも書き換え可能)
  • ヘルパーメソッド(ショートカットのためのメソッド)
    • PHPUnit Mockオブジェクトの生成とメソッド実行の検証を助けるメソッド
    • ReflectionHelper ... プライベートメソッド/プロパティへの簡単なアクセス
  • サンプルとして
    • データベースシーディングライブラリ
    • テストのためのSessionクラス(MY_Session.php)

いざまとめると、あまり大したことない感じですが、実際にテストを書くとその便利さに驚くはずです。たぶん。

使い方

以下の記事およびその中の「もっと知るには?」にあるリンク先をご覧下さい。

参考

Date: 2015/11/19

Tags: codeigniter, phpunit, testing