Automated testing & analysis - php-tuf/composer-stager GitHub Wiki
Composer Stager aims at the highest level of quality standards. As many as possible are enforced by automated tools:
Functional & unit testing
It uses PHPUnit (phpunit.xml.dist
) for functional and isolated unit testing. The quality of the tests themselves is analyzed using Infection (infection.json5.dist
) for mutation testing.
Static analysis
Architecture and design policies are enforced and probable bugs are detected by custom and out-of-the-box rules using these tools:
- PHP_CodeSniffer (PHPCS) (
phpcs.xml.dist
) - PHPStan (
phpstan.neon
) - Psalm (
psalm.xml.dist
) - PHPMD (
phpmd.xml
) - Rector (
rector.php
) - ...and more. See GrumPHP tasks in
grumphp.yml.dist
.
See also the Coding standards & style guide.
Performance testing
Performance testing is done on multiple operating systems with PHPBench (phpbench.json
).
Automation
It uses GitHub Actions (.github
) to run its full test suite and quality tools on pull requests and on a regular schedule. It uses for automation.