The main scope for this project is to create error report in JUnit format that can be easly integrated in Jenkins or other tools that use this information.
Warning This project is not needed anymore since this feature is now built-in into PHPStan itself
You need to include this library in your project as dev-dependency, it dependes on the version of phpstan you're using you should use a different version of mavimo/phpstan-junit
library, this table will give you a dependency map:
phpstan/phpstan version |
mavimo/phpstan-junit version |
---|---|
0.10.x |
0.1.x |
0.11.x |
0.2.x |
0.12.x |
0.3.x |
But if alredy specified the phpstan/phpstan
version you can just use:
composer require --dev mavimo/phpstan-junit
If you also install phpstan/extension-installer then you're all set, otherwise take a look to manual setup section below.
Manual setup for PHPStan 0.11 and next
if you don't want to use `phpstan/extension-installer`, you should require the `extension.neon` file on your `phpstan.neon.dist` file in the root of your project (or on the file you specify to phpstan using the `--config` flag):includes:
- vendor/mavimo/phpstan-junit/extension.neon
or declaring the service via:
services:
errorFormatter.junit:
class: Mavimo\PHPStan\ErrorFormatter\JunitErrorFormatter
Manual setup for PHPStan 0.10
You should require this extension on `phpstan.neon` file in the root of your project or the file you specify to phpstan using the `--config` flag by referencing `extension.neon` file:
includes:
- vendor/mavimo/phpstan-junit/phpstan.neon
or declaring the service via:
services:
errorFormatter.junit:
class: Mavimo\PHPStan\ErrorFormatter\JunitErrorFormatter
You should gnerate JUnit report with the flag --error-format=junit
, eg:
vendor/bin/phpstan --error-format=junit --no-progress --no-interaction analyse src
Contributions are welcome!
PR's will be merged only if:
- phpunit is ✅, you can run it using
vendor/bin/phpunit
- phpstan is ✅, you can run it using
vendor/bin/phpstan analyse
- phpcs is ✅, you can run it using
vendor/bin/phpcs
- code coverage will not decrease (or there are good reason to decrease it), you can check the current coverage using
phpdbg -qrr ./vendor/bin/phpunit --coverage-text
If you have any question feel free to open a issue or contact me!