Awesome
NOT MAINTANED ANYMORE
The development of composer-plugin-qa
was dropped in favor of phpqa which is actively maintained. The project use docker and can less tightly coupled solution. :)
Composer Plugin for QA
Comprehensive plugin for composer to execute PHP QA Tools in a uniform and simple way.
Features
- Automatic check if exists src,app,test and use by default
- Check if binary is in
vendor/bin
or globally installed - Show
--version
for all started commands, only few tools show this information - Total Execution time
- Command executed by the wrapper
Install
Add to composer.json:
"require-dev": {
"webysther/composer-plugin-qa": "~1.0",
"webysther/composer-meta-qa": "~1.0"
}
Or install globally:
composer global require webysther/composer-plugin-qa
List the options
$ composer list
Almost commands have the short version, example,qa:sec
is short version for qa:security-checker
.
Sample
Run Code Sniffer to all source code (composer qa:cs
is a short version):
If you change some peace of code e need run for this change:
Is possibile to point for diretory or file:
$ composer qa:cs app/ACME
$ composer qa:cs app/ACME/Bomb.php
To see options for any QA command:
$ composer qa:cpd --help
List of PHP Quality Assurance Tools
- PHPUnit: Testing Framework
- PHPCOV: CLI frontend for the PHP_CodeCoverage
- Paratest: Parallel testing for PHPUnit
- DbUnit: Puts your database into a known state between test runs
- PHPLOC: A tool for quickly measuring the size of a PHP project
- PHPCPD: Copy/Paste Detector
- PHP_Depend: Quality of your design in the terms of extensibility, reusability and maintainability
- PHPMD: User friendly frontend application for the raw metrics stream measured by PHP Depend
- PhpMetrics: Static analysis tool, gives metrics about PHP project and classes
- PHP_CodeSniffer: Detects violations of a defined set of coding standards
Plus:
- PHP-CS-Fixer: A tool to automatically fix coding standards issues
- Security-Checker: Checks if your application uses dependencies with known security vulnerabilities
Suggest install:
- Prestissimo: Composer parallel install plugin