phpunit/php-code-coverage
phpunit/php-code-coverage collects, processes, and renders PHP code coverage data. Use it to start/stop coverage during tests, filter included files, and generate reports such as OpenClover XML from live runs or serialized coverage data.
Provides collection, processing, and rendering functionality for PHP code coverage information.
You can add this library as a local, per-project dependency to your project using Composer:
composer require phpunit/php-code-coverage
If you only need this library during development, for instance to run your project's test suite, then you should add it as a development-time dependency:
composer require --dev phpunit/php-code-coverage
<?php declare(strict_types=1);
use SebastianBergmann\CodeCoverage\CodeCoverage;
use SebastianBergmann\CodeCoverage\Driver\Selector as DriverSelector;
use SebastianBergmann\CodeCoverage\Filter;
use SebastianBergmann\CodeCoverage\Report\Facade as ReportFacade;
$filter = new Filter;
$filter->includeFiles(
[
'/path/to/file.php',
'/path/to/another_file.php',
],
);
$coverage = new CodeCoverage(
(new DriverSelector)->forLineCoverage($filter),
$filter,
);
$coverage->start('<name of test>');
// ...
$coverage->stop();
ReportFacade::fromObject($coverage)->renderOpenClover('/tmp/openclover.xml');
<?php declare(strict_types=1);
use SebastianBergmann\CodeCoverage\Report\Facade as ReportFacade;
use SebastianBergmann\CodeCoverage\Serialization\Unserializer;
$data = (new Unserializer)->unserialize('/path/to/coverage.php');
ReportFacade::fromSerializedData($data)->renderOpenClover('/tmp/openclover.xml');
How can I help you explore Laravel packages today?