CodeDungeon PHPUnit Pretty Result Printer
Version 0.29.2 Extend the default PHPUnit Result Printer with a modern, pretty printer!
Installation
Installation provided via composer and can be done with the following command, the current version requires PHP 7.1 or greater:
> composer require --dev codedungeon/phpunit-result-printer
Upgrading to >= 0.29.x
If you are upgrading from previous verison and have published phpunit-printer.yml
locally, make sure add the following to the options section
...
cd-printer-dont-format-classname: false
...
Execute Initialization Script (Optional)
The following steps are optional, but will provide zero configuration for implementing phpunit-pretty-result-printer
- Adds
printerClass="Codedungeon\PHPUnitPrettyResultPrinter\Printer"
tophpunit.xml
file - Copies default
phpunit-printer.yml
to project root for easier customization
> php ./vendor/codedungeon/phpunit-result-printer/src/init.php
Manual Configuration
Alternately, if you wish to configure phpunit-pretty-result-printer manually, you will need to update your phpunit.xml
file as follows
<?xml version="1.0" encoding="UTF-8"?>
<phpunit printerClass="Codedungeon\PHPUnitPrettyResultPrinter\Printer">
// ....
</phpunit>
Or from Command-Line:
> phpunit --printer=Codedungeon\\PHPUnitPrettyResultPrinter\\Printer
Laravel 5.3 with PHP version 7.0.x
If you are using PHP 7.0.x, you will need to use a compatible version of PHPUnit Result Printer (version 0.8.x)
> composer require --dev codedungeon/phpunit-result-printer:^0.8
AnyBar Integration
If you have AnyBar installed, it will be enabled by default. You can disable using cd-printer-anybar-enabled
option (see below)
https://github.com/tonsky/AnyBar
**Anybar is off by default, thus you will need to set the cd-printer-anybar
option in the phpunit-printer.yml
to true
if you wish to use Anybar.
This has been done to address issues with using CI tools such as travis (please see Issue 122 for details) **
NOTE: AnyBar is only available with PHPUnit 7.1 or greater. If you need support for previous versions, please let us know. We are slowly deprecating versions before 7.1.
Configuration Options
- Create a
phpunit-printer.yml
file in your application root to override default (or anywhere use up the parent tree. It will search recursively up the tree until a configuration file is found. If not found, default configuration will be used). The following options are available (along with their default values):
Options
Property Name | Default | Description |
---|---|---|
cd-printer-hide-class |
false | Hides the display of the test class name |
cd-printer-simple-output |
false | Uses the default PHPUnit markers (but still uses Printer) |
cd-printer-show-config |
true | Show path to used configuration file |
cd-printer-hide-namespace |
true | Hide test class namespaces (will only show print class name) |
cd-printer-anybar |
true | Enable AnyBar (if anybar is not installed, settings will be ignored) |
cd-printer-anybar-port |
1738 | Define AnyBar port number |
cd-printer-dont-format-classname |
false | Show entire classname* |
- If
cd-printer-hide-namespace
set tofalse
andcd-printer-dont-format-classname
tofalse
will attempt to keep everyting formatted - If
cd-printer-dont-format-classname
nothing will be formatted and full classname will be displayed
Markers
You can customize the markers which are used for success
, fail
, error
, skipped
, incomplete
by modifying the phpunit-printer.yml
file.
Marker | Value * |
---|---|
cd-pass | " |
cd-fail | " |
cd-error | "β " |
cd-skipped | "β " |
cd-incomplete | "β " |
cd-risky | "β½ " |
* Notice space after each marker. This makes the output a little more visually appealing, thus keep that in mind when creating your own custom markers
License
Copyright Β© 2017-2021 Mike Erickson Released under the MIT license
Credits
phpunit-result-printer written by Mike Erickson
E-Mail: [email protected]
Twitter: @codedungeon
Website: https://github.com/mikeerickson