続いて、
unit testの環境を作ります。
CakePHPのUnit Testは、test.phpで実施できますので、
http://192.168.33.10/test.php
を指定します。
PHPUnit is not installed!
と出ます。
hhvmでは、phpをいれなくてもよいので、pearもいらないだろうと思うので、
pearは入れずに、phpunitを入れようと思います。
composerを使ってインストールします。
こちらを参考にしてダウンロードします。
https://github.com/facebook/hhvm/wiki/OSS-PHP-Frameworks-Unit-Testing:-General
https://github.com/facebook/hhvm/wiki/OSS-PHP-Frameworks-Unit-Testing:-CakePHP
$ cd /usr/share/nginx/html/cake_2_5
$ wget https://getcomposer.org/download/1.0.0-alpha8/composer.phar
$ vi composer.json
{
"config": {
"vendor-dir": "vendors"
},
"require-dev": {
"phpunit/phpunit": "3.7.*"
}
}
そして、インストール。
$ hhvm composer.phar install --dev
次のようなエラーがでることがあります。
SlowTimer [5007ms] at curl: https://packagist.org/p/provider-archived$4f097d431ccbfed3a6c36a172a662645d227ec94d074b7a9484490726c4c5500.json
や
The "https://packagist.org/packages.json" file could not be downloaded: Failed to open
https://packagist.org/packages.json (Resolving timed out after 5000 milliseconds)
などのメッセージが出てました。
タイムアウトっぽいです。
以下のサイトを参照。
https://blog.engineyard.com/2014/hhvm-hack-part-2
$ hhvm -v ResourceLimit.SocketDefaultTimeout=30 -v Http.SlowQueryThreshold=30000 -v Eval.Jit=false composer.phar install --dev
として、なんとかなりそうです。
phpunitが入ったかを確認します。
http://192.168.33.10/test.php
すると、
何も表示されなくなりました。
真っ白です。
一応、PHP Unitはインストールされたとみて良さそうです。
cake_2_5/lib/Cake/TestSuite/CakeTestSuiteDispatcher.php
を調べてみて、
100行目あたりにある
ob_get_clean();
これをコメントアウトして、実施すると、
test.phpが思ったようなTest Casesが出るようになりました。
どうやら
ob_get_clean();
がphpと動きが違うような気がします。
とりあえずは、OKで。
この辺はできれば追って調べることにします。
0 件のコメント:
コメントを投稿