How to use phpunit installed from composer?

composer-php, phpunit, symfony

Solution

If you followed the documentation, you have set the `phpunit/phpunit` dependency as a 'dev-dependency'.

If you don't have composer, you need to install it first. This is explained in the documentation: Installation *nix or Installation Windows. If you already installed composer, it is a good practise to update composer to the latest version by running the `self-update` command:

$ php composer.phar self-update

After your have done that, you need to install all dependencies, including the dev dependencies. This is done by running the `update` command with the `--dev` switch:

$ php composer.phar update --dev

All the dependencies are installed in the `vendor` directory. PHPunit runs from the console. Composer automatic put the console files inside the `vendor/bin` directory. You need to execute the `phpunit` file in there:

$ vendor/bin/phpunit -c app/

The `-c` switch tells PHPUnit to look for the configuration file in the `app` directory, Symfony2 already set up the correct configuration to run all tests that are in the `<bundle>/Tests` directory.

UPDATE (05-04-2013)

Composer has changed their update/install commands. `update` will install dev dependencies by default and if you want to install dev dependencies, you need to use the `--dev` option.

UPDATE (11-06-2013)

Composer has changed their commands again, the `install` command will also install dev dependencies.

Problem

I want to start unit testing my symfony 2 application with phpunit. I installed phpunit using composer (per-project dependancy). http://www.phpunit.de/manual/current/en/installation.html How do I now run the phpunit command on Zend Server? I don't have pear installed.

Original source

Related problems