2014-06-27 注記: NetBeans 8.0以降向けにCakePHP 2.x + PHPUnit on NetBeans 第3版を書きました。
先日、CakePHPのテストをNetBeans上で実行する記事を書きましたが、Fixtureの作成に問題がありそのままでは実用に堪えませんでした。
色々試行錯誤した結果、NetBeans側を修正することでFixtureの読み込みを行うようにするのがよい感じでしたのでその方法をご紹介します。
NetBeansSuite.phpを編集する
NetBeansからのPHPUnitの実行は、全てこのNetBeansSuiteクラスを経由します。
このクラスをカスタマイズして、テスト実行前にFixtureの準備を行います。
NetBeansSuite.php は、以下の場所にあります。
OSX: /Applications/NetBeans\ 7.1.app/Contents/Resources/NetBeans/php/phpunit/NetBeansSuite.php
Windows: (ユーザディレクトリ)\.netbeans\7.1\phpunit\NetBeansSuite.php
Linux: (誰か教えてくださいませ)/php/phpunit/NetBeansSuite.php
NetBeansSuite.php を編集し、setUp(), tearDown(), _getFixtureManager()
を追加します。
NetBeansからでもCakePHP2のFixtureを読み込むためのNetBeansSuite魔改造 — Gist
上記は、NetBeans 7.1.1のNetBeansSuite.phpをベースにしていますので、それ以外のバージョンであれば以下のパッチを当てるとよいでしょう。
以上で、NetBeans側の修正は完了です。
さらに以下の記事を参考にして、各CakePHPプロジェクト毎に設定を行うことでスムーズにテストの実行ができます。
CakePHP2.0 + PHPUnit on NetBeans @ php-tips
それではみなさん、快適テスト生活でハッピー!ハッピー!
Pingback: CakePHP2.0 + PHPUnit on NetBeans @ php-tips
Pingback: CakePHP Run PHPUnit with NetBeans | 管理人の日記~つらつらなるままに~
Pingback: CakePHP 2.x + PHPUnit on NetBeans 第3版 | php-tips.com