我成功地在我的台式电脑上安装了 PHPUnit,并决定在我的笔记本电脑上安装它,但是......然后我尝试创建 PHPUnit 测试 Netbeans 抛出错误"选定的 PHPUnit(版本 ?.?.?)是旧的,如果可能的话升级它(最低版本是3.3.0)。
当然,我的 PHPUnit 版本较新 - 3.5.5-2。问题出在哪里?
我正在使用
- 乌班图 11.04
- Netbeans 6.9
- 梨版本:1.9.1
- PHP 版本: 5.3.5-1ubuntu7.2
- Zend引擎版本:2.3.0
据我了解,问题出在PHPUnit上。当我尝试在终端中调用"phpunit"命令时,我收到PHP致命错误:
root@ubuntu:~# phpunit –version
PHP Warning: require_once(PHP/CodeCoverage/Filter.php): failed to open stream: No such file or directory in /usr/bin/phpunit on line 38
PHP Stack trace:
PHP 1. {main}() /usr/bin/phpunit:0
PHP Fatal error: require_once(): Failed opening required 'PHP/CodeCoverage/Filter.php' (include_path='.:/usr/share/php:/usr/share/pear') in /usr/bin/phpunit on line 38
PHP Stack trace:
PHP 1. {main}() /usr/bin/phpunit:0
root@ubuntu:~# find / -name CodeCov*
root@ubuntu:~#
如您所见,我的PC中没有这样的文件或文件夹。怎么办?
我尝试重新安装它很多次(使用apt-get,pear,Synaptic PM...),但总是得到相同的结果。
问题解决了。
关注@David哈克尼斯评论我尝试安装PHP_CodeCoverage然后我意识到我的梨安装程序太旧了。我将其升级到 1.9.2,然后重新安装 PHPUnit。
$ wget http://pear.php.net/go-pear.phar
$ php go-pear.phar
$ pear install phpunit/PHPUnit
这很奇怪,因为所有软件都是一周前新安装的。
答。我最终如何安装 PHPUnit。
sudo pear channel-discover pear.phpunit.de
sudo pear channel-discover components.ez.no
sudo pear channel-discover pear.symfony-project.com
sudo pear install phpunit/PHP_CodeCoverage
sudo pear install phpunit/PHPUnit
如果您仍然遇到问题,请尝试更新 PEAR:
sudo wget http://pear.php.net/go-pear.phar
sudo php go-pear.phar
-
配置通道自动发现
须藤梨配置集 auto_discover 1
-
只需升级/安装 phpunit 并启用 --alldeps 标志
须藤梨升级--全德普斯 channel://pear.phpunit.de/PHPUnit
它会自动施展必要的魔法。 :)
更新: http://pear.phpunit.de/已经消失了(返回 410)
这里的其他解决方案对我不起作用。我终于在这里找到了一个适合我的解决方案:http://markojakic.net/configure-phpunit-and-pear-in-ubuntu-12-04
基本上,对我来说,梨默认是将二进制文件安装到我的主目录中。为了修复它,我运行了以下命令
sudo pear config-set bin_dir /usr/bin
sudo pear config-set doc_dir /usr/share/php/doc
sudo pear config-set php_dir /usr/share/php
sudo pear config-set cfg_dir /usr/share/php/cfg (make (sudo mkdir cfg) directory here)
sudo pear config-set data_dir /usr/share/php/data
sudo pear config-set test_dir /usr/share/php/test
sudo pear uninstall phpunit/PHPUnit
sudo pear install phpunit/PHPUnit
PHAR FTW!
$ wget http://pear.phpunit.de/get/phpunit.phar
$ chmod +x phpunit.phar
参考: https://github.com/sebastianbergmann/phpunit/blob/master/README.md
获取最新版本的 pear 和 phpunit。
pear upgrade
pear upgrade pear
pear upgrade phpunit/PHPUnit