在过去的24小时里,我一直在网上搜索我的问题的解决方案,我正在使用ubuntu 12.04LTS。当我使用wordpress测试套件运行测试时,我得到了
"PHP Warning: require_once(PHPUnit/Autoload.php): failed to open stream: No such file or directory in /home/anver/mybook/myweb/wordpress-tests/includes/bootstrap.php on line 7
PHP Fatal error: require_once(): Failed opening required 'PHPUnit/Autoload.php' (include_path='.:/usr/share/php') in /home/anver/mybook/myweb/wordpress-tests/includes/bootstrap.php on line 7"
我知道系统无法找到Autoload.php文件。我检查了我的梨配置以使用
获取php目录pear config-show | grep 'php_dir'
所以我得到了
PEAR directory php_dir /usr/share/php
我将此路径添加到php.ini包含路径,以确保我使用的是正确运行的php.ini文件
php --info | grep 'onfiguration'
我通过
安装了phpunitsudo pear channel-discover components.ez.no
sudo pear channel-discover pear.symfony-project.com
sudo pear channel-discover pear.phpunit.de
sudo pear update-channels
sudo pear upgrade --alldeps
sudo pear install --alldeps phpunit/PHPUnit
一切安装成功,当我运行
phpunit --version
我得到Sebastian Bergmann的PHPUnit 4.0.7。
问题是当我进入/ usr / share / php时,没有名为PHPUnit的目录,其中包含所有php文件和自动加载器。所以我试图手动创建目录并安装它,但仍然没有把任何php文件放到目录中,我也试过chmodded目录权限到777,这也不起作用。
我几乎完成了从系统中完全删除梨的所有操作并重新安装了几次,删除了几次phpunit并重新安装但没有运气。
有人可以帮忙吗?
答案 0 :(得分:1)
Atlast在互联网上打了几个小时之后找到了一个解决方案。
首先,wordpress官方单元测试框架未更新为使用最新的phpunit php代码。所以我所做的是使用梨的最新phpunit二进制文件并使用git存储库中的旧php包。步骤说明如下。
使用pear
将zip文件下载到您的主目录并解压缩
将名为PHPUnit的目录复制到/ usr / share / php的位置可能 根据您的Linux发行版
chmod the dir to 755
sudo pear install phpunit / PHP_CodeCoverage
sudo pear install
的PHPUnit / PHP_Timer
sudo pear install phpunit / PHPUnit_MockObject
要获取phpunit所有可用的pear扩展名列表,您可以使用 sudo pear list-all -c phpunit
现在你可以进入wordpress-tests目录并运行phpunit,现在一切都应该没问题。请享用 !如果您有任何问题,请告诉我。