CakePHPでテストケースを書いてたら躓いたのでメモ
TOP > てきとうにこらむ > ゲーム作りとプログラミング日記 > CakePHPでテストケースを書いてたら躓いたのでメモ
CakePHPでテストケースを書いている
Controllerのテストで、testActionメソッドを実行すると、以下のようなエラーに苦しめられた。もう見つからないので一部。
CakeTestSuiteDispatcher::{closure}(): Failed opening required '/usr/share/php/PHPUnit/Framework/MockObject/Generator.php'
修復
どうやら、Generator.phpが見つからなかったようだ。PHPUnit_MockObjectが上手くインストール出来なかったか、バージョンが違ったらしい。
再インストールしたら治ったようだ。
$ sudo pear uninstall phpunit/PHPUnit
$ sudo pear uninstall phpunit/PHPUnit_MockObject
$ sudo pear install phpunit/PHPUnit-3.7.30
推測した原因
おそらく、pear install phpunit/PHPUnitでインストールされるPHPUnitのバージョンが4系であったことが原因ではないかと思う。その時にPHPUnit_MockObjectも入ってしまった上、PHPUnitをアンインストールしても残ってしまったことで整合性が取れなくなったのかなと思う。
CakePHPで使用するPHPUnitについて
PHPUnitの最新バージョンは4系になっているが、CakePHPは対応していない模様(CakePHP2.2.9)。PHPUnitは3.7系をインストールすること。