Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot get PHPunit working

Tags:

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.

My current error is

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

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

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.

Thanks,

Demian.

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 
like image 564
dimbo Avatar asked Nov 10 '11 11:11

dimbo


People also ask

How do I run PHPUnit on Windows?

Open file Explorer and type "C:\windows\system32", then find cmd.exe and right click and select "Run as administrator". Start the Command Prompt as Administrator by clicking Start, All programs and Accessories, then right-click on Command Prompt link and selecting "Run as Administrator" from the context menu.

How do I run a single PHPUnit test?

To Run a single PHPUnit Test Case on a method within the file: Open your PHPUnit Test Case file in the editor. Place your cursor on the method you wish to test, right-click and select Run As | PHP Unit Test.

Can not find PHPUnit library to install use PHP composer Phar install?

First go to Settings -> Languages and Frameworks -> PHP and Add a remote interpreter, then go to Settings -> Languages and Frameworks -> PHP -> PHPUnit click the + on top and click by Remote Interpreter . If you're using Composer autoloader, then enter your full Vagrant path to your autoloader file.


1 Answers

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 Users: Omit "sudo"if you are on windows platform

like image 88
edorian Avatar answered Sep 28 '22 05:09

edorian