Since version 3.7, PHPUnit allows us to install the test runner and optional dependencies using Composer. With PhpStorm, this workflow is now supported from the IDE. Using both the bundled Composer support and PhpStorm's unit testing support, we can install PHPUnit via Composer without any hassle. Let's find out how.
Let's start off with a blank project. We can use the Tools | Composer | Init Composer... menu command to enable Composer support for our project. If you don't have composer.phar anywhere on your system, the Click here to download from getcomposer.org helper will download the latest composer.phar from the official website.
Once initialized, we can use the PhpStorm Composer support to add dependencies. We can use the Composer | Manage Dependencies... command to download PHPUnit into our project. That's right: PhpStorm comes with a nice UI for searching packages from the Packagist website.
After PHPUnit and all dependencies are installed successfully, our project's structure is now the following: the vendor folder containing all dependencies brought in using Composer, including PHPUnit.
Just like with PHPUnit installed using PEAR or as a PHAR file, we need to configure the location of PHPUnit in PhpStorm. In File | Settings (PhpStorm | Preferences on Mac) | Languages & Frameworks | PHP | Test Frameworks, select the PHPUnit Local page. We can now select the Use Composer autoloader option and specify the path to the autoload.php file generated by Composer. Optionally we can specify a default PHPUnit configuration file or a PHPUnit bootstrap file to be used when running tests.
Our run configuration will look pretty simple: specify the directory containing tests (or a specific class/method or rely on the PHPUnit configuration file to find tests to run).
We can now invoke this run configuration and have our unit tests running using the PHPUnit version installed through Composer.