.. | ||
build | ||
src | ||
tests | ||
.gitattributes | ||
.gitignore | ||
.php_cs | ||
.travis.yml | ||
build.xml | ||
ChangeLog-2.2.md | ||
ChangeLog-3.0.md | ||
ChangeLog-3.1.md | ||
ChangeLog-3.2.md | ||
composer.json | ||
CONTRIBUTING.md | ||
LICENSE | ||
phpunit.xml.dist | ||
README.md |
PHP_CodeCoverage
PHP_CodeCoverage is a library that provides collection, processing, and rendering functionality for PHP code coverage information.
Requirements
PHP 5.6 is required but using the latest version of PHP is highly recommended
PHP 5
Xdebug is the only source of raw code coverage data supported for PHP 5. Version 2.2.1 of Xdebug is required but using the latest version is highly recommended.
PHP 7
phpdbg is currently the only source of raw code coverage data supported for PHP 7. Once Xdebug has been updated for PHP 7 it, too, will be supported.
HHVM
A version of HHVM that implements the Xdebug API for code coverage (xdebug_*_code_coverage()
) is required.
Installation
To add PHP_CodeCoverage as a local, per-project dependency to your project, simply add a dependency on phpunit/php-code-coverage
to your project's composer.json
file. Here is a minimal example of a composer.json
file that just defines a dependency on PHP_CodeCoverage 3.0:
{
"require": {
"phpunit/php-code-coverage": "^3"
}
}
Using the PHP_CodeCoverage API
<?php
$coverage = new PHP_CodeCoverage;
$coverage->start('<name of test>');
// ...
$coverage->stop();
$writer = new PHP_CodeCoverage_Report_Clover;
$writer->process($coverage, '/tmp/clover.xml');
$writer = new PHP_CodeCoverage_Report_HTML;
$writer->process($coverage, '/tmp/code-coverage-report');