cakephpの単体試験用にphpunitを入れようとして
wget https://phar.phpunit.de/phpunit.phar
mv phpunit.phar /usr/local/bin/phpunit
するも、ブラウザからhttp://xxxxxxxxxxxxxx/test.php
にアクセスすると
Warning (2): include(PHPUnit/Autoload.php) [function.include]: failed to open stream: No such file or directory [CORE/Cake/TestSuite/CakeTestSuiteDispatcher.php, line 150]
とブラウザにエラーが表示される。 どうも環境のphpが古い(5.3)のが原因のようだ。
phpのバージョンは変えられない状況なので、phpunitの方を合わせることとする。
まずはcomposerを入れる
composerはphpのパッケージ管理ツールで、他にpearがある。
$ curl -sS https://getcomposer.org/installer | php
$ sudo mv composer.phar /usr/local/bin/composer
次にphpunitのインストール。
$ cd /var/www/cakephp/
$ sudo vi composer.json
$ cat composer.json
{
"require-dev": {
"phpunit/phpunit": "3.7.*"
}
}
$ sudo composer update
これで/var/www/cakephp/vendor/にインストールされる。
あとは/var/www/cakephp/vendor/autoload.phpのパスをbootstrap.phpに書くだけ
$ sudo vi /var/www/cakephp/app/Config/bootstrap.php
$ sudo head /var/www/cakephp/app/Config/bootstrap.php
<?php
require '/var/www/cakephp/vendor/autoload.php';
これでいけた