Я пытаюсь заставить PHPunit работать в моем проекте zend framework и сталкивается с различными проблемами. Я переустановил PEAR и удалил PHPunit и переустановил их оба.
Моя текущая ошибка
demian @ dimbo-TP: ~ $ phpunit PHP Предупреждение: require_once (PHPUnit / Framework / MockObject / Autoload.php): не удалось открыть поток: нет такого файла или каталога в /usr/share/php/PHPUnit/Autoload.php на линии 48 PHP Неустранимая ошибка: require_once (): Не удалось открыть «PHPUnit / Framework / MockObject / Autoload.php» (include_path = '.: / Usr / share / php /: / usr / local / share / php / library') в /usr/share/php/PHPUnit/Autoload.php в строке 48
Я использую ubuntu 11.10, PHP 5.3.6-13ubuntu3.2
Я был бы очень благодарен, если бы кто-нибудь мог дать мне несколько указателей. Я много искал в google, но ничего, похоже, не решает мою проблему.
Благодаря,
Демьян.
Вот мой дамп оболочки, который показывает, что я сделал недавно:
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, но другие пакеты отсутствуют. Вы должны исправить это, используя
sudo pear install --alldeps --force phpunit/phpunit
или если вы хотите только обновить lib, который, кажется, является проблемой:
sudo pear install --force phpunit/PHPUnit_MockObject
Пользователи Windows: опустите «sudo», если вы находитесь на платформе Windows