Composerを使ってPHPUnitをインストール
PHPUnitはpearなどで入れることも出来ますが、ほかのPearライブラリと同一フォルダにインストールされてしまうため管理しにくいし、チームの各自でPearインストールをしてもらうとバージョンも異なる可能性もあるので避けたい。
必要なファイルだけをGitで管理してチーム全体で共有するために、Composerを使ってインストールしてみました。
まずはインストールしたいディレクトリに移動
cd app/Vendor
そこに、composer.jsonというファイル名で下記の内容を記述
{ "name": "phpunit", "description": "PHPUnit", "require": { "phpunit/phpunit": "3.7.*" }, "config": { "vendor-dir": "PHPUnit" } }
composerをダウンロード
wget http://getcomposer.org/composer.phar
そのディレクトリで、下記を実行するとインストール完了です
php composer.phar install
これで、app/Vendor/PHPUnitの中に必要なファイルがインストールされました。
それをgitで管理すれば良いだけ。
あとは、phpファイルの中で下記を読み込めば、phpunitが実行できるようになります(定数APPはCake独自のもの)
require_once APP . DS . 'Vendor' . DS . 'PHPUnit' . DS . 'autoload.php';
次回は、CakePHP2でこれを利用する方法を書きます。
App::import('Model', 'モデル名')をCakePHP2用にApp::uses()使うように置換
テストケースなどでモデルの読み込みをApp::importでやっている箇所が大量にあったので、一括置換する方法
App::importの箇所を、自分のモデル名の文字列を切り出して、App::usesに置換します。
find ./ -name "*.php" | xargs sed -i "s/App::import('Model', \(.*\))/App::uses(\1, 'Model')/g"