sergiynezbritskiy / coverage-checker
CLI tool to verify that test coverage in a clover report meets a minimal threshold.
Package info
github.com/sergiynezbritskiy/coverage-checker
pkg:composer/sergiynezbritskiy/coverage-checker
1.0.0
2026-08-08 16:27 UTC
Requires
- php: >=8.2
- ext-libxml: *
- ext-simplexml: *
Requires (Dev)
- dealerdirect/phpcodesniffer-composer-installer: ^1.0
- phpcompatibility/php-compatibility: ^9.3
- phpmd/phpmd: ^3@dev
- phpstan/phpstan: 2.2.x-dev
- phpunit/phpunit: ^11.0
- squizlabs/php_codesniffer: ^3.7
README
CLI tool to verify that test coverage in a clover report meets a minimal threshold. Intended to be used in CI/CD pipelines to fail the build when coverage drops below the accepted level.
Installation
composer require --dev sergiynezbritskiy/coverage-checker
Usage
vendor/bin/coverage-checker <path/to/clover.xml> <min-coverage>
where:
path/to/clover.xml— path to a test coverage report in clover format (e.g. produced byphpunit --coverage-clover=...);min-coverage— the minimal allowed coverage percentage, a number between 0 and 100.
Example:
vendor/bin/coverage-checker var/reports/coverage.xml 90
In CI/CD environments where ANSI colors are not desired, disable them via the ANSI
environment variable:
ANSI=0 vendor/bin/coverage-checker var/reports/coverage.xml 90
Exit codes
| Code | Meaning |
|---|---|
| 0 | Coverage meets or exceeds the threshold |
| 1 | Coverage is below the threshold |
| 2 | Usage error (invalid arguments) or invalid/empty coverage report |
Development
docker compose build docker compose run --rm php composer install docker compose run --rm php composer run all
composer run all runs codesniffer, mess detector, phpstan and the phpunit test suite
with coverage (reports are written to var/reports/).