/phpunit

The PHP Unit Testing framework.

Primary LanguagePHPOtherNOASSERTION

PHPUnit

PHPUnit is the de-facto standard for unit testing in PHP projects. It provides both a framework that makes the writing of tests easy as well as the functionality to easily run the tests and analyse their results.

Requirements

  • PHPUnit 3.8 requires PHP 5.4.7 (or later).
  • PHP_CodeCoverage, the library that is used by PHPUnit to collect and process code coverage information, depends on Xdebug 2.2.1 (or later).

Installation

There are three supported ways of installing PHPUnit.

You can use the PEAR Installer or Composer to download and install PHPUnit as well as its dependencies. You can also download a PHP Archive (PHAR) of PHPUnit that has all required (as well as some optional) dependencies of PHPUnit bundled in a single file.

PEAR Installer

The following two commands (which you may have to run as root) are all that is required to install PHPUnit using the PEAR Installer:

pear config-set auto_discover 1
pear install pear.phpunit.de/PHPUnit

Composer

To add PHPUnit as a local, per-project dependency to your project, simply add a dependency on phpunit/phpunit to your project's composer.json file. Here is a minimal example of a composer.json file that just defines a development-time dependency on PHPUnit 3.7:

{
    "require-dev": {
        "phpunit/phpunit": "3.7.*"
    }
}

PHP Archive (PHAR)

wget http://pear.phpunit.de/get/phpunit.phar
chmod +x phpunit.phar

Documentation

The documentation for PHPUnit is available in different formats:

IRC

The #phpunit channel on the Freenode IRC network is a place to chat about PHPUnit.

List of Contributors

Thanks to everyone who has contributed to PHPUnit! You can find a detailed list of contributors on every PHPUnit related package on GitHub. This list shows only the major components:

A very special thanks to everyone who has contributed to the documentation and helps maintaining the translations:

Please refer to CONTRIBUTING.md for information on how to contribute to PHPUnit and its related projects.