Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
phpunit和yii-(phpunit/Autoload.php):无法打开流:_Php_Yii_Phpunit - Fatal编程技术网

phpunit和yii-(phpunit/Autoload.php):无法打开流:

phpunit和yii-(phpunit/Autoload.php):无法打开流:,php,yii,phpunit,Php,Yii,Phpunit,在Yii上安装phpunit时遇到很多问题。我运行: $ phpunit unit/dbTest.php 但事实证明,这是一个错误: PHP警告:require_once(PHPUnit/Autoload.PHP):无法打开流:第12行的/opt/yii-1.1.10.r3566/framework/test/CTestCase.PHP中没有此类文件或目录 (包括路径='。:/usr/bin:/usr/share/php:/usr/bin/pear:/usr/share/php/Zend/:/

在Yii上安装phpunit时遇到很多问题。我运行:

$ phpunit unit/dbTest.php
但事实证明,这是一个错误:

PHP警告:require_once(PHPUnit/Autoload.PHP):无法打开流:第12行的/opt/yii-1.1.10.r3566/framework/test/CTestCase.PHP中没有此类文件或目录

(包括路径='。:/usr/bin:/usr/share/php:/usr/bin/pear:/usr/share/php/Zend/:/opt/php5.3.10/lib/php/PHPUnit'

有关我的安装的一些详细信息:

$ phpunit --version
PHPUnit 3.4.5 by Sebastian Bergmann.

php --version
PHP 5.3.10 (cli) (built: Apr  6 2012 20:06:37) ( rebuilt didn't help :( )

pear list phpunit/phpunit
....
php    /opt/php5.3.10/lib/php/PHPUnit/Autoload.php
根据该信息,自动加载已安装,并且位于包含路径上


我不知道我还需要做些什么-有人能帮我点灯吗?

我希望这对某人有用:

在ubuntu上,PEAR似乎已被破坏,无法执行此任务,
apt get
也帮不上忙

我就是这样解决的

http://pear.phpunit.de/

phpunit/PHPUnit

手动dezip并正确地放入php库或任何你想让它们去的地方。将这个库的头放在你的include路径上(在我的设置中,php、PHPlib、PEAR都在这个根级别)


该死的,希望这能帮到某人我昨晚花了6个小时让它工作…

正如里克斯在他的回答中所说的,你必须手动下载一些文件

我在Ubuntu10.04上使用了以下命令:

wget http://pear.phpunit.de/get/PHPUnit-3.6.10.tgz
wget http://pear.phpunit.de/get/File_Iterator-1.3.1.tgz
wget http://pear.phpunit.de/get/PHPUnit_MockObject-1.1.1.tgz
wget http://pear.phpunit.de/get/PHPUnit_Selenium-1.2.6.tgz
wget http://pear.phpunit.de/get/PHP_CodeCoverage-1.1.2.tgz
wget http://pear.phpunit.de/get/PHP_TokenStream-1.1.3.tgz
wget http://pear.phpunit.de/get/Text_Template-1.1.1.tgz
wget http://pear.phpunit.de/get/PHP_Timer-1.0.2.tgz

sudo vi /etc/php5/cli/php.ini
=>添加/usr/share/php/PHPUnit/to include_path指令

tar xzf PHPUnit-3.6.10.tgz 
cd PHPUnit-3.6.10/
sudo cp -r PHPUnit/ /usr/share/php/
sudo ln -s /usr/share/php/PHPUnit /usr/bin/PHPUnit

tar xzf File_Iterator-1.3.1.tgz
sudo cp -r File/ /usr/share/php/PHPUnit/

tar xzf PHP_CodeCoverage-1.1.2.tgz
cd PHP_CodeCoverage-1.1.2/
sudo cp -R PHP/ /usr/share/php/PHPUnit/

tar xzf PHP_TokenStream-1.1.3.tgz
cd PHP_TokenStream-1.1.3/PHP/
sudo cp -r Token* /usr/share/php/PHPUnit/PHP/

tar xzf Text_Template-1.1.1.tgz
cd Text_Template-1.1.1/
sudo cp -r Text/ /usr/share/php/PHPUnit/

tar xzf PHP_Timer-1.0.2.tgz 
cd PHP_Timer-1.0.2/
sudo cp -r PHP/Timer* /usr/share/php/PHPUnit/PHP/

tar xzf PHPUnit_MockObject-1.1.1.tgz
cd PHPUnit_MockObject-1.1.1/
sudo cp -r PHPUnit/Framework/MockObject/ /usr/share/php/PHPUnit/Framework/

tar xzf PHPUnit_Selenium-1.2.6.tgz
cd PHPUnit_Selenium-1.2.6/
sudo cp -r PHPUnit/Extensions/* /usr/share/php/PHPUnit/Extensions/

我添加了add/usr/share/php/以包含_path,而不是add/usr/share/php/PHPUnit/,它成功了。谢谢。在Ubuntu上,我可以使用以下方法安装它:sudo pear install--force--alldeps pear.PHPUnit.de/PHPUnit(你必须找到pear.PHPUnit.de频道,但我想就是这样)实际上,您在这里运行有点疯狂。可能是您使用pear安装程序时出现了问题。始终先升级pear。然后检查包含路径,它会显示它不正确(不是,它不在包含路径中,您只是这么认为)。在调试中:在疯狂运行之前,请先后退一步并证明确切原因。然后,修复很容易,例如,正确配置包含路径。您是如何安装PHPUnit的?这些命令缺失,因此很难确定错误的确切位置,但是,包含路径错误,这就是它不需要该文件的原因(错误消息也告诉您。它没有撒谎)。您的错误是由于文件查找
PHPUnit/Autoload.php
您的包含路径没有
PHPUnit/Autoload.php
,这是由于设置了包含的
PHPUnit
目录而没有父目录。
tar xzf PHPUnit-3.6.10.tgz 
cd PHPUnit-3.6.10/
sudo cp -r PHPUnit/ /usr/share/php/
sudo ln -s /usr/share/php/PHPUnit /usr/bin/PHPUnit

tar xzf File_Iterator-1.3.1.tgz
sudo cp -r File/ /usr/share/php/PHPUnit/

tar xzf PHP_CodeCoverage-1.1.2.tgz
cd PHP_CodeCoverage-1.1.2/
sudo cp -R PHP/ /usr/share/php/PHPUnit/

tar xzf PHP_TokenStream-1.1.3.tgz
cd PHP_TokenStream-1.1.3/PHP/
sudo cp -r Token* /usr/share/php/PHPUnit/PHP/

tar xzf Text_Template-1.1.1.tgz
cd Text_Template-1.1.1/
sudo cp -r Text/ /usr/share/php/PHPUnit/

tar xzf PHP_Timer-1.0.2.tgz 
cd PHP_Timer-1.0.2/
sudo cp -r PHP/Timer* /usr/share/php/PHPUnit/PHP/

tar xzf PHPUnit_MockObject-1.1.1.tgz
cd PHPUnit_MockObject-1.1.1/
sudo cp -r PHPUnit/Framework/MockObject/ /usr/share/php/PHPUnit/Framework/

tar xzf PHPUnit_Selenium-1.2.6.tgz
cd PHPUnit_Selenium-1.2.6/
sudo cp -r PHPUnit/Extensions/* /usr/share/php/PHPUnit/Extensions/