PHPackages                             skyzyx/phpunit-result-printer - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Testing &amp; Quality](/categories/testing)
4. /
5. skyzyx/phpunit-result-printer

AbandonedArchivedLibrary[Testing &amp; Quality](/categories/testing)

skyzyx/phpunit-result-printer
=============================

A custom printer for PHPUnit.

4.0.1(6y ago)37.2k2[1 issues](https://github.com/skyzyx/phpunit-result-printer/issues)MITPHPPHP &gt;=7.2

Since Jul 17Pushed 6y ago1 watchersCompare

[ Source](https://github.com/skyzyx/phpunit-result-printer)[ Packagist](https://packagist.org/packages/skyzyx/phpunit-result-printer)[ RSS](/packages/skyzyx-phpunit-result-printer/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (9)Dependencies (1)Versions (10)Used By (0)

PHPUnit Result Printer
======================

[](#phpunit-result-printer)

[![Source](https://camo.githubusercontent.com/486e115be64f188d4987835bad302e574e5aca1e9796c1ae0ebae257c1c0c649/687474703a2f2f696d672e736869656c64732e696f2f62616467652f736f757263652d736b797a79782f706870756e69742d726573756c742d7072696e7465722d626c75652e7376673f7374796c653d666c61742d737175617265)](https://github.com/skyzyx/phpunit-result-printer)[![Latest Stable Version](https://camo.githubusercontent.com/6908bd8224061363762e41d55aea44cea02b43603e6b9160f10c0cf24acb3120/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f736b797a79782f706870756e69742d726573756c742d7072696e7465722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/skyzyx/phpunit-result-printer)[![Total Downloads](https://camo.githubusercontent.com/5f2bc65de637a4caec9a72bc00e49668895c965722588a49d9c46371a8280efb/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f736b797a79782f706870756e69742d726573756c742d7072696e7465722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/skyzyx/phpunit-result-printer)[![Open Issues](https://camo.githubusercontent.com/13fd098c516d55defdbfb13ca30854715bd41a58bd3ea75b7b72b46d134120ab/687474703a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f736b797a79782f706870756e69742d726573756c742d7072696e7465722e7376673f7374796c653d666c61742d737175617265)](https://github.com/skyzyx/phpunit-result-printer/issues)[![License](https://camo.githubusercontent.com/2b57cf893eaa4b9d8b7638885ff8575f706843499ff8c9b4f863942104de1ca5/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f736b797a79782f706870756e69742d726573756c742d7072696e7465722d626c75652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/skyzyx/phpunit-result-printer)[![Author](https://camo.githubusercontent.com/efe0ace262a01c191d3a926f4cda2e7dad108d0f36d1cbe0f6dab11185ff9bc4/687474703a2f2f696d672e736869656c64732e696f2f62616467652f617574686f722d40736b797a79782d626c75652e7376673f7374796c653d666c61742d737175617265)](https://twitter.com/skyzyx)

A custom result printer for PHPUnit.

Examples
--------

[](#examples)

Here is the output from using this with [skyzyx/php-strong-types](https://github.com/skyzyx/php-strong-types).

```
PHPUnit 5.4.6 by Sebastian Bergmann and contributors.

Runtime:       PHP 7.0.9 with Xdebug 2.4.1
Configuration: /Library/WebServer/Documents/php-strong-types/phpunit.xml.dist

  1/544 (  0%) ✓ Skyzyx\Tests\StrongTypes\AbstractTest::testTypeMap (72 ms)
  2/544 (  0%) ✓ Skyzyx\Tests\StrongTypes\AbstractTest::testNativeType (103 ms)
  3/544 (  0%) ✓ Skyzyx\Tests\StrongTypes\BooleanTest::testBooleanType (90 ms)
  4/544 (  0%) ✓ Skyzyx\Tests\StrongTypes\BooleanTest::testBooleanException (114 ms)
  5/544 (  0%) ✓ Skyzyx\Tests\StrongTypes\BooleanTest::testBooleanToString (85 ms)
  6/544 (  1%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionType (99 ms)
  7/544 (  1%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionCount (85 ms)
  8/544 (  1%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionAppend (86 ms)
  9/544 (  1%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionGetInvalid (78 ms)
 10/544 (  1%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionRemove (91 ms)
 11/544 (  2%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionSeek (86 ms)
 12/544 (  2%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionToString (76 ms)
 13/544 (  2%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionDeepArray (82 ms)
 14/544 (  2%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionDeepArrayFail (90 ms)
 15/544 (  2%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionExists (82 ms)
 16/544 (  2%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionSeekable (94 ms)
 17/544 (  3%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionForeach (80 ms)
 18/544 (  3%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionValidation (100 ms)
 19/544 (  3%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionValidationStringException (93 ms)
 20/544 (  3%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionValidationIntegerException (86 ms)
 21/544 (  3%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionValidationIntegerException2 (93 ms)
 22/544 (  4%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionValidationMissingRequiredException (85 ms)
 23/544 (  4%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionValidationDisallowedException (87 ms)
 24/544 (  4%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionSeekableException (74 ms)
 25/544 (  4%) ✓ Skyzyx\Tests\StrongTypes\CollectionTest::testCollectionException (81 ms)
 26/544 (  4%) ✓ Skyzyx\Tests\StrongTypes\EnumTest::testEnumType (74 ms)
 27/544 (  4%) ✓ Skyzyx\Tests\StrongTypes\EnumTest::testEnumToString (75 ms)
 28/544 (  5%) ✓ Skyzyx\Tests\StrongTypes\EnumTest::testEnumValidate (60 ms)
 29/544 (  5%) ✓ Skyzyx\Tests\StrongTypes\FloatTest::testFloatType (61 ms)
 30/544 (  5%) ✓ Skyzyx\Tests\StrongTypes\FloatTest::testFloatExceptionInteger (65 ms)
 31/544 (  5%) ✓ Skyzyx\Tests\StrongTypes\FloatTest::testFloatExceptionString (66 ms)
 32/544 (  5%) ✓ Skyzyx\Tests\StrongTypes\FloatTest::testFloatToString (57 ms)
 33/544 (  6%) ✓ Skyzyx\Tests\StrongTypes\IntegerTest::testIntegerType (63 ms)
 34/544 (  6%) ✓ Skyzyx\Tests\StrongTypes\IntegerTest::testIntegerExceptionString (66 ms)
 35/544 (  6%) ✓ Skyzyx\Tests\StrongTypes\IntegerTest::testIntegerExceptionFloat (66 ms)
 36/544 (  6%) ✓ Skyzyx\Tests\StrongTypes\IntegerTest::testIntegerToString (59 ms)
 37/544 (  6%) ✓ Skyzyx\Tests\StrongTypes\ListCollectionTest::testListCollectionValid (60 ms)
 38/544 (  6%) ✓ Skyzyx\Tests\StrongTypes\ListCollectionTest::testListCollectionException (63 ms)
 39/544 (  7%) ✓ Skyzyx\Tests\StrongTypes\MapCollectionTest::testMapCollectionValid (63 ms)
 40/544 (  7%) ✓ Skyzyx\Tests\StrongTypes\MapCollectionTest::testMapCollectionException (66 ms)
 41/544 (  7%) ✓ Skyzyx\Tests\StrongTypes\OneOfCollectionTest::testOneOfCollectionValid1 (70 ms)
 42/544 (  7%) ✓ Skyzyx\Tests\StrongTypes\OneOfCollectionTest::testOneOfCollectionValid2 (64 ms)
 43/544 (  7%) ✓ Skyzyx\Tests\StrongTypes\OneOfCollectionTest::testOneOfCollectionFail (61 ms)
 44/544 (  8%) ✓ Skyzyx\Tests\StrongTypes\OneOfCollectionTest::testOneOfCollectionFail2 (67 ms)
 45/544 (  8%) ✓ Skyzyx\Tests\StrongTypes\SetCollectionTest::testSetCollectionValid (60 ms)
 46/544 (  8%) ✓ Skyzyx\Tests\StrongTypes\SetCollectionTest::testSetCollectionAdd (65 ms)
 47/544 (  8%) ✓ Skyzyx\Tests\StrongTypes\SetCollectionTest::testSetCollectionException (62 ms)
 48/544 (  8%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testStringType (64 ms)
 49/544 (  9%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testStringException (63 ms)
 50/544 (  9%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testClassOrType (117 ms)
 51/544 (  9%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testExactLengthOk (73 ms)
 52/544 (  9%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testExactLengthFail (71 ms)
 53/544 (  9%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testExactLengthFail2 (77 ms)
 54/544 (  9%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testLengthOk (70 ms)
 55/544 ( 10%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testLengthOk2 (64 ms)
 56/544 ( 10%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testMinLengthFail (62 ms)
 57/544 ( 10%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testMaxLengthFail (65 ms)
 58/544 ( 10%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testMaxLengthFail2 (64 ms)
 59/544 ( 10%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testMinUtf8LengthOk (65 ms)
 60/544 ( 11%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testMaxUtf8LengthOk (66 ms)
 61/544 ( 11%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testAsciiFromUnicode (63 ms)
 62/544 ( 11%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testAsciiFromUnicode2 (67 ms)
 63/544 ( 11%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testUtf8FromUnicode (63 ms)
 64/544 ( 11%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testAsciiFromBytes (63 ms)
 65/544 ( 11%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testUtf8FromBytes (67 ms)
 66/544 ( 12%) ✓ Skyzyx\Tests\StrongTypes\StringTest::testUtf8FromBytes2 (68 ms)
 67/544 ( 12%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #0 ('   Just a string') (66 ms)
 68/544 ( 12%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #1 (' abigail@example.com') (67 ms)
 69/544 ( 12%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #2 (' joeblow@apache.org') (67 ms)
 70/544 ( 12%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #3 ('$@[]') (63 ms)
 71/544 ( 13%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #4 ('':;') (63 ms)
 72/544 ( 13%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #5 ('()@example.com') (62 ms)
 73/544 ( 13%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #6 ('(comment)') (67 ms)
 74/544 ( 13%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #7 ('(foo) abigail@example.com') (66 ms)
 75/544 ( 13%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #8 ('*()@[]') (74 ms)
 76/544 ( 13%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #9 ('@example.com') (68 ms)
 77/544 ( 14%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #10 ('"127.0.0.1"@[127.0.0.1]') (65 ms)
 78/544 ( 14%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #11 ('":sysmail"@  Some-Group. Some-Org') (64 ms)
 79/544 ( 14%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #12 ('""test\""blah""@example.com') (62 ms)
 80/544 ( 14%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #13 ('"\""@foo.bar') (63 ms)
 81/544 ( 14%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #14 ('"Abi"gail" ') (60 ms)
 82/544 ( 15%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #15 ('"Abi\"gail" ') (63 ms)
 83/544 ( 15%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #16 ('"Abigail "') (60 ms)
 84/544 ( 15%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #17 ('"George, Ted" ') (65 ms)
 85/544 ( 15%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #18 ('"Joe & J. Harvey" ') (63 ms)
 86/544 ( 15%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #19 ('"Joe & J. Harvey"\x0D\x0A    ...@ Org>') (64 ms)
 87/544 ( 15%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #20 ('"Joe &\x0D\x0A J. Harvey" ') (62 ms)
 88/544 ( 16%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #21 ('"joe!"@apache.org') (63 ms)
 89/544 ( 16%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #22 ('"joe%45"@apache.org') (61 ms)
 90/544 ( 16%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #23 ('"joe&"@apache.org') (64 ms)
 91/544 ( 16%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #24 ('"joe'"@apache.org') (63 ms)
 92/544 ( 16%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #25 ('"joe("@apache.org') (60 ms)
 93/544 ( 17%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #26 ('"joe)"@apache.org') (65 ms)
 94/544 ( 17%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #27 ('"joe*"@apache.org') (60 ms)
 95/544 ( 17%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #28 ('"joe+"@apache.org') (63 ms)
 96/544 ( 17%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #29 ('"joe,"@apache.org') (63 ms)
 97/544 ( 17%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #30 ('"joe."@apache.org') (62 ms)
 98/544 ( 18%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #31 ('"joe;"@apache.org') (77 ms)
 99/544 ( 18%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #32 ('"joe="@apache.org') (66 ms)
100/544 ( 18%) ✓ Skyzyx\Tests\StrongTypes\StringType\EmailInvalidTest::testValidate with data set #33 ('"joe?"@apache.org') (65 ms)

```

Installation
------------

[](#installation)

Using [Composer](https://getcomposer.org):

```
composer require skyzyx/phpunit-result-printer=^2.0
```

And include it in your scripts:

```
require_once 'vendor/autoload.php';
```

Testing
-------

[](#testing)

Firstly, run `composer install --optimize-autoloader` to download and install the dependencies.

You can run the tests as follows:

```
bin/phpunit
```

Contributing
------------

[](#contributing)

Here's the process for contributing:

1. Fork PHPUnit Result Printer to your GitHub account.
2. Clone your GitHub copy of the repository into your local workspace.
3. Write code, fix bugs, and add tests with 100% code coverage.
4. Commit your changes to your local workspace and push them up to your GitHub copy.
5. You submit a GitHub pull request with a description of what the change is.
6. The contribution is reviewed. Maybe there will be some banter back-and-forth in the comments.
7. If all goes well, your pull request will be accepted and your changes are merged in.

Authors, Copyright &amp; Licensing
----------------------------------

[](#authors-copyright--licensing)

- Copyright (c) 2014-2017 [Ryan Parman](http://ryanparman.com).

See also the list of [contributors](https://github.com/skyzyx/phpunit-result-printer/contributors) who participated in this project.

Licensed for use under the terms of the [MIT](http://www.opensource.org/licenses/mit-license.php) license.

Coding Standards
----------------

[](#coding-standards)

PSR-0/1/2 are a solid foundation, but are not an entire coding style by themselves. I have taken the time to document all of the nitpicky patterns and nuances of my personal coding style. It goes well-beyond brace placement and tabs vs. spaces to cover topics such as docblock annotations, ternary operations and which variation of English to use. It aims for thoroughness and pedanticism over hoping that we can all get along.

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance13

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity64

Established project with proven stability

 Bus Factor1

Top contributor holds 94.1% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~172 days

Recently: every ~288 days

Total

9

Last Release

2253d ago

Major Versions

1.0.3 → 2.0.02017-02-23

2.1.0 → 3.0.02018-02-12

3.0.0 → 4.0.02020-04-22

PHP version history (3 changes)2.0.0PHP &gt;=7.0

3.0.0PHP &gt;=7.1

4.0.0PHP &gt;=7.2

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/39447?v=4)[Ryan Parman](/maintainers/skyzyx)[@skyzyx](https://github.com/skyzyx)

---

Top Contributors

[![skyzyx](https://avatars.githubusercontent.com/u/39447?v=4)](https://github.com/skyzyx "skyzyx (16 commits)")[![asheliahut](https://avatars.githubusercontent.com/u/945619?v=4)](https://github.com/asheliahut "asheliahut (1 commits)")

---

Tags

composerphpunitprinter

### Embed Badge

![Health badge](/badges/skyzyx-phpunit-result-printer/health.svg)

```
[![Health](https://phpackages.com/badges/skyzyx-phpunit-result-printer/health.svg)](https://phpackages.com/packages/skyzyx-phpunit-result-printer)
```

###  Alternatives

[brianium/paratest

Parallel testing for PHP

2.5k129.9M910](/packages/brianium-paratest)[orchestra/testbench

Laravel Testing Helper for Packages Development

2.2k41.3M38.7k](/packages/orchestra-testbench)[drupal/core-dev

require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.

2022.0M321](/packages/drupal-core-dev)[webmozarts/strict-phpunit

Enables type-safe comparisons of objects in PHPUnit

30300.1k6](/packages/webmozarts-strict-phpunit)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
