bear / qatools
PHP QA Tools
1.13.0
2025-12-03 02:32 UTC
Requires
- php: ^7.4 || ^8.0
- doctrine/coding-standard: ^9 || ^10.0 || ^11.0 || ^12.0 || ^13.0 || ^14.0
- friendsofphp/php-cs-fixer: ^3.4
- phpmd/phpmd: ^2.11
- phpmetrics/phpmetrics: ^2.7
- phpstan/phpstan: ^2.1
- phpunit/phpunit: ^9.6 || ^10.5 || ^11.3 || ^12.0
- squizlabs/php_codesniffer: ^3.5
- vimeo/psalm: ^4.2 || ^5.25 || ^6.11 || 6.x-dev as 6.14
This package is auto-updated.
Last update: 2026-04-05 17:49:33 UTC
README
Collection of commonly used PHP QA tools.
Included in this package are:
- phpunit/phpunit The PHP Unit Testing framework.
- phpmd/phpmd PHPMD is a spin-off project of PHP Depend and aims to be a PHP equivalent of the well known Java tool PMD.
- squizlabs/php_codesniffer PHP_CodeSniffer tokenises PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.
- friendsofphp/php-cs-fixer A tool to automatically fix PHP Coding Standards issues.
- phpstan/phpstan A PHP Static Analysis Tool.
- vimeo/psalm A static analysis tool for PHP.
- phpmetrics/phpmetrics Static analysis tool for PHP.
Installation
Global install
composer global require bear/qatools
Local install
composer require --dev bear/qatools
QA Configs
cp vendor/bear/qatools/phpunit.xml.dist phpunit.xml
cp vendor/bear/qatools/phpcs.xml .
cp vendor/bear/qatools/phpmd.xml .
cp vendor/bear/qatools/phpstan.neon .
psalm --init
CI Configs
cp vendor/bear/qatools/.scrutinizer.yml .
Usage
Composer Scripts
composer tests # Run cs, sa, and test in sequence
composer test # Run PHPUnit tests
composer cs # Run PHP_CodeSniffer
composer cs-fix # Auto-fix coding standard violations with phpcbf
composer sa # Run all static analysis (phpstan, psalm, phpmd)
composer coverage # Generate test coverage report
composer metrics # Generate PHPMetrics HTML report
Direct Commands
phpunit
phpunit
phpcs
phpcs --standard=./phpcs.xml src
phpstan
phpstan analyse -c phpstan.neon
psalm
psalm
phpmd
phpmd src text ./phpmd.xml
phpmetrics
phpmetrics --report-html=build/metrics src
Code Standards
- PSR-12 base with Doctrine Coding Standard
- PHPStan level: max
- Psalm errorLevel: 1
- PHP compatibility: 7.4+