无法使PHPunit工作 [英] Cannot get PHPunit working

查看:62
本文介绍了无法使PHPunit工作的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在努力让PHPunit为我的zend框架项目工作,并且遇到了各种各样的问题.我已经重新安装了PEAR并卸载了PHPunit,然后又重新安装了它们.

I have been tring to get PHPunit working for my zend framework project and have been encountering various problems. I have reinstalled PEAR and uninstalled PHPunit, and reinstalled them both.

我当前的错误是

demian @ dimbo-TP:〜$ phpunit PHP警告:require_once(PHPUnit/Framework/MockObject/Autoload.php):无法打开流:第48行的/usr/share/php/PHPUnit/Autoload.php中没有此类文件或目录 PHP致命错误:require_once():无法在/中打开所需的'PHPUnit/Framework/MockObject/Autoload.php'(include_path ='.:/usr/share/php/:/usr/local/share/php/library')第48行的usr/share/php/PHPUnit/Autoload.php

demian@dimbo-TP:~$ phpunit PHP Warning: require_once(PHPUnit/Framework/MockObject/Autoload.php): failed to open stream: No such file or directory in /usr/share/php/PHPUnit/Autoload.php on line 48 PHP Fatal error: require_once(): Failed opening required 'PHPUnit/Framework/MockObject/Autoload.php' (include_path='.:/usr/share/php/:/usr/local/share/php/library') in /usr/share/php/PHPUnit/Autoload.php on line 48

我正在使用ubuntu 11.10,PHP 5.3.6-13ubuntu3.2

I am using ubuntu 11.10, PHP 5.3.6-13ubuntu3.2

如果有人能给我一些指导,我将不胜感激.我在Google上看了很多,但似乎没有什么能解决我的问题.

I would be very grateful if someone could give me some pointers. I have looked plenty on google, but nothing seems to solve my problem.

谢谢

德米安.

这是我的shell转储,显示了我最近所做的事情:

Here is my shell dump which shows what I have done recently:

demian@dimbo-TP:~$ phpunit
The program 'phpunit' is currently not installed.  You can install it by typing:
sudo apt-get install phpunit

demian@dimbo-TP:~$ sudo pear channel-discover pear.phpunit.de
[sudo] password for demian:  

Channel "pear.phpunit.de" is already initialized

demian@dimbo-TP:~$ sudo pear channel-discover pear.symfony-project.com

Channel "pear.symfony-project.com" is already initialized

demian@dimbo-TP:~$ sudo pear channel-discover components.ez.no

Channel "components.ez.no" is already initialized

demian@dimbo-TP:~$ sudo pear update-channels

Updating channel "components.ez.no"

Channel "components.ez.no" is up to date

Updating channel "doc.php.net"

Channel "doc.php.net" is up to date

Updating channel "pear.php.net"

Channel "pear.php.net" is up to date

Updating channel "pear.phpunit.de"

Channel "pear.phpunit.de" is up to date

Updating channel "pear.symfony-project.com"

Channel "pear.symfony-project.com" is up to date

Updating channel "pecl.php.net"

Channel "pecl.php.net" is up to date

demian@dimbo-TP:~$ sudo pear upgrade-all

Will upgrade channel://pear.php.net/benchmark

downloading Benchmark-1.2.8.tgz ...

Starting to download Benchmark-1.2.8.tgz (8,352 bytes)

.....done: 8,352 bytes

upgrade-all ok: channel://pear.php.net/Benchmark-1.2.8

demian@dimbo-TP:~$ sudo pear install --force --alldeps phpunit/PHPUnit

downloading PHPUnit-3.6.3.tgz ...

Starting to download PHPUnit-3.6.3.tgz (116,362 bytes)

.........................done: 116,362 bytes

install ok: channel://pear.phpunit.de/PHPUnit-3.6.3

demian@dimbo-TP:~$ pear install phpunit/PHP_CodeCoverage

phpunit/PHP_CodeCoverage is already installed and is the same as the released version 1.1.1

install failed

demian@dimbo-TP:~$ phpunit


PHP Warning:  require_once(PHPUnit/Framework/MockObject/Autoload.php): failed to open 
stream: No such file or directory in /usr/share/php/PHPUnit/Autoload.php on line 48

PHP Fatal error:  require_once(): Failed opening required 
'PHPUnit/Framework/MockObject/Autoload.php' (include_path='.:/usr/share/php/:/usr/local/share/php/library') in /usr/share/php/PHPUnit/Autoload.php on line 48

demian@dimbo-TP:~$ pear install phpunit

Warning: lstat(): Lstat failed for /tmp/pear/cache/312d32445ed39d8611ead5ee1d8cd72frest.cacheid in PEAR/REST.php on line 276
PHP Warning:  lstat(): Lstat failed for /tmp/pear/cache/312d32445ed39d8611ead5ee1d8cd72frest.cacheid in /usr/share/php/PEAR/REST.php on line 276
No releases available for package "pear.php.net/phpunit"
install failed

demian@dimbo-TP:~$ sudo pear install phpunit

WARNING: "pear/PHPUnit" is deprecated in favor of "phpunit/PHPUnit"
Did not download dependencies: pear/PHP_Compat, use --alldeps or --onlyreqdeps to download automatically
pear/PHPUnit can optionally use package "pear/PHP_Compat"
downloading PHPUnit-1.3.2.tgz ...
Starting to download PHPUnit-1.3.2.tgz (20,913 bytes)
........done: 20,913 bytes
install ok: channel://pear.php.net/PHPUnit-1.3.2

demian@dimbo-TP:~$ phpunit

PHP Warning:  require_once(PHPUnit/Framework/MockObject/Autoload.php): failed to open stream: No such file or directory in /usr/share/php/PHPUnit/Autoload.php on line 48
PHP Fatal error:  require_once(): Failed opening required 'PHPUnit/Framework/MockObject/Autoload.php' (include_path='.:/usr/share/php/:/usr/local/share/php/library') in /usr/share/php/PHPUnit/Autoload.php on line 48

demian@dimbo-TP:~$ sudo pear uninstall phpunit
uninstall ok: channel://pear.php.net/PHPUnit-1.3.2

demian@dimbo-TP:~$ ^C

demian@dimbo-TP:~$ pear install phpunit/PHPUnit
phpunit/PHPUnit is already installed and is the same as the released version 3.6.3
install failed

demian@dimbo-TP:~$ phpunit

PHP Warning:  require_once(PHPUnit/Framework/MockObject/Autoload.php): failed to open stream: No such file or directory in /usr/share/php/PHPUnit/Autoload.php on line 48
PHP Fatal error:  require_once(): Failed opening required 'PHPUnit/Framework/MockObject/Autoload.php' (include_path='.:/usr/share/php/:/usr/local/share/php/library') in /usr/share/php/PHPUnit/Autoload.php on line 48

demian@dimbo-TP:~$ pear install --force phpunit/PHPUnit

WARNING: configuration download directory "/tmp/pear/download" is not writeable.  Change download_dir config variable to a writeable dir to avoid this warning
Cannot install, php_dir for channel "pear.phpunit.de" is not writeable by the current user

demian@dimbo-TP:~$ sudo pear install phpunit/PHPUnit

phpunit/PHPUnit is already installed and is the same as the released version 3.6.3
install failed

demian@dimbo-TP:~$ pear install --force phpunit/PHPUnit

WARNING: configuration download directory "/tmp/pear/download" is not writeable.  Change download_dir config variable to a writeable dir to avoid this warning
Cannot install, php_dir for channel "pear.phpunit.de" is not writeable by the current user

demian@dimbo-TP:~$ sudo pear install --force phpunit/PHPUnit

Did not download optional dependencies: phpunit/PHP_Invoker, use --alldeps to download automatically
downloading PHPUnit-3.6.3.tgz ...
Starting to download PHPUnit-3.6.3.tgz (116,362 bytes)
.........................done: 116,362 bytes
install ok: channel://pear.phpunit.de/PHPUnit-3.6.3

demian@dimbo-TP:~$ phpunit

PHP Warning:  require_once(PHPUnit/Framework/MockObject/Autoload.php): failed to open stream: No such file or directory in /usr/share/php/PHPUnit/Autoload.php on line 48
PHP Fatal error:  require_once(): Failed opening required 'PHPUnit/Framework/MockObject/Autoload.php' (include_path='.:/usr/share/php/:/usr/local/share/php/library') in /usr/share/php/PHPUnit/Autoload.php on line 48

推荐答案

它选择了正确的phpunit,但是缺少其他软件包.您应该可以使用

It picks up the right phpunit but the other packages are missing. You should be able to fix this using

sudo pear install --alldeps --force phpunit/phpunit

,或者如果您只想更新似乎是问题所在的库,则:

or if you want to only update the lib that seems to be the issue:

sudo pear install --force phpunit/PHPUnit_MockObject

Windows用户:如果您使用的是Windows平台,请省略"sudo"

Windows Users: Omit "sudo"if you are on windows platform

这篇关于无法使PHPunit工作的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆