PHPackages                             facile-it/paraunit - 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. facile-it/paraunit

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

facile-it/paraunit
==================

paraunit

2.8.0(2mo ago)146721.6k↑71.3%18[5 PRs](https://github.com/facile-it/paraunit/pulls)11Apache-2.0PHPPHP ^8.1CI passing

Since Sep 8Pushed 1mo ago27 watchersCompare

[ Source](https://github.com/facile-it/paraunit)[ Packagist](https://packagist.org/packages/facile-it/paraunit)[ Docs](https://github.com/facile-it/paraunit)[ RSS](/packages/facile-it-paraunit/feed)WikiDiscussions 2.x Synced 1mo ago

READMEChangelog (10)Dependencies (24)Versions (76)Used By (11)

facile-it/paraunit
==================

[](#facile-itparaunit)

[![PHP Version](https://camo.githubusercontent.com/6cc32f161a114e2eeebcb19bfac8905298a71a1d9cb5f3e22ea95d5a28d17149/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253545372e30253743253545382e312d626c7565)](https://camo.githubusercontent.com/6cc32f161a114e2eeebcb19bfac8905298a71a1d9cb5f3e22ea95d5a28d17149/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253545372e30253743253545382e312d626c7565)[![Stable release](https://camo.githubusercontent.com/47cbcccda4a2890c22bcc804b498396a8592b0b69a249c1f17bc1520b300f957/68747470733a2f2f706f7365722e707567782e6f72672f666163696c652d69742f70617261756e69742f76657273696f6e2e737667)](https://packagist.org/packages/facile-it/paraunit)[![Unstable release](https://camo.githubusercontent.com/590fbe6129703f6423f9007f4c4cfc9f52a103b381a468f6bbd8077197b1ba55/68747470733a2f2f706f7365722e707567782e6f72672f666163696c652d69742f70617261756e69742f762f756e737461626c652e737667)](https://packagist.org/packages/facile-it/paraunit)

[![Build status](https://camo.githubusercontent.com/5f8cbaebd7123b82afef38a5c9da92e8ad314907b5421227ec26113efdc8a87f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f666163696c652d69742f70617261756e69742f74657374732e79616d6c3f6272616e63683d322e78)](https://github.com/facile-it/paraunit/actions)[![Coverage Status](https://camo.githubusercontent.com/f7ac00b29e125e0e80c6f9fef638b3f8acbe62552b2d79c116b50c187bfb723e/68747470733a2f2f636f6465636f762e696f2f67682f666163696c652d69742f70617261756e69742f6272616e63682f6d61737465722f67726170682f62616467652e737667)](https://codecov.io/gh/facile-it/paraunit)

Paraunit is a tool for faster executions of PHPUnit test suites. It makes this possible by launching multiple test in parallel with single PHPUnit processes.

Paraunit is developed using Symfony components.

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

[](#installation)

To use this package, use Composer:

- from CLI: `composer require --dev facile-it/paraunit`
- or, directly in your `composer.json`:

```
{
    "require-dev": {
        "facile-it/paraunit": "^2.0"
    }
}
```

### Compatibility

[](#compatibility)

You can use Paraunit with many versions of PHPUnit or Symfony, following this compatibility list:

Paraunit versionCompatible PHPUnit VersionCompatible Symfony Version2.510.5.4+, 11+, 12+4.4, 5, 6, 72.310.5.4+, 11+4.4, 5, 6, 72.010+4.4, 5, 6, 71.39.3+4.4, 5, 61.29.3+3.4, 4, 51.19.1, 9.23.4, 4, 51.0.\*7, 83.4, 4, 50.12.\*6, 72.8, 3, 4Usage
-----

[](#usage)

Paraunit starts as a Symfony console command, but it's provided through a bin launcher; you can run it like this:
(assuming your Composer's bin dir is `vendor/bin`)

```
vendor/bin/paraunit run

```

This command will launch all the tests in all your configured testsuites.

### Collect test coverage

[](#collect-test-coverage)

Paraunit is also able to **collect the test coverage in parallel**, like this:

```
vendor/bin/paraunit coverage --html=./dir

```

It **automatically uses the best coverage driver available**: it tries to use [Pcov](https://github.com/krakjoe/pcov) if available (since it's the fastest), otherwise it uses [Xdebug](https://xdebug.org/). If neither are available, it should always be able to use [PHPDbg](https://www.php.net/manual/en/book.phpdbg.php), which is bundled in PHP core, so it should be always present. It can produce coverage in the same formats that PHPUnit provides: HTML, Clover, Cobertura, XML, Crap4j, PHP, text file and text to console.

Documentation
-------------

[](#documentation)

For more details about Paraunit and its usage, see the [documentation](https://engineering.facile.it/paraunit/documentation/)

###  Health Score

69

—

FairBetter than 100% of packages

Maintenance86

Actively maintained with recent releases

Popularity54

Moderate usage in the ecosystem

Community37

Small or concentrated contributor base

Maturity87

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 85.7% 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 ~59 days

Recently: every ~95 days

Total

66

Last Release

56d ago

Major Versions

0.12.x-dev → 1.0.0-beta12019-04-08

1.3.0 → 2.0.02023-03-06

1.x-dev → 2.5.02025-02-08

PHP version history (6 changes)0.7.3PHP &gt;=5.3.3,&lt;8

0.9PHP ^7.0

0.12-BETA1PHP ^7.1

1.1.0PHP ^7.3

1.2.0PHP ^7.3||^8.0

2.0.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/5cd2707d7bc5233dac66a38db2af69d347c4c815ffb6ddbd9be27cd1eda37d14?d=identicon)[Jean85](/maintainers/Jean85)

![](https://www.gravatar.com/avatar/5d7b74d41d0b4fbccef0593c9374d984459c2cfd48d38e6a23ac6bf34dbbc625?d=identicon)[Fpanina](/maintainers/Fpanina)

---

Top Contributors

[![Jean85](https://avatars.githubusercontent.com/u/6729988?v=4)](https://github.com/Jean85 "Jean85 (1423 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (96 commits)")[![ranpafin](https://avatars.githubusercontent.com/u/3133626?v=4)](https://github.com/ranpafin "ranpafin (49 commits)")[![pczerkas](https://avatars.githubusercontent.com/u/1935071?v=4)](https://github.com/pczerkas "pczerkas (32 commits)")[![garak](https://avatars.githubusercontent.com/u/179866?v=4)](https://github.com/garak "garak (10 commits)")[![Chris8934](https://avatars.githubusercontent.com/u/44963939?v=4)](https://github.com/Chris8934 "Chris8934 (9 commits)")[![keljtanoski](https://avatars.githubusercontent.com/u/37045988?v=4)](https://github.com/keljtanoski "keljtanoski (9 commits)")[![MaurizioMoreo](https://avatars.githubusercontent.com/u/51058637?v=4)](https://github.com/MaurizioMoreo "MaurizioMoreo (8 commits)")[![raffaelecarelle](https://avatars.githubusercontent.com/u/15015792?v=4)](https://github.com/raffaelecarelle "raffaelecarelle (6 commits)")[![kubawerlos](https://avatars.githubusercontent.com/u/9282069?v=4)](https://github.com/kubawerlos "kubawerlos (5 commits)")[![fntlnz](https://avatars.githubusercontent.com/u/3083633?v=4)](https://github.com/fntlnz "fntlnz (3 commits)")[![ilario-pierbattista](https://avatars.githubusercontent.com/u/987038?v=4)](https://github.com/ilario-pierbattista "ilario-pierbattista (3 commits)")[![thomasvargiu](https://avatars.githubusercontent.com/u/732012?v=4)](https://github.com/thomasvargiu "thomasvargiu (2 commits)")[![Slamdunk](https://avatars.githubusercontent.com/u/152236?v=4)](https://github.com/Slamdunk "Slamdunk (1 commits)")[![taueres](https://avatars.githubusercontent.com/u/3669079?v=4)](https://github.com/taueres "taueres (1 commits)")[![Kocal](https://avatars.githubusercontent.com/u/2103975?v=4)](https://github.com/Kocal "Kocal (1 commits)")[![xzhayon](https://avatars.githubusercontent.com/u/1392022?v=4)](https://github.com/xzhayon "xzhayon (1 commits)")[![elernonelma](https://avatars.githubusercontent.com/u/5020567?v=4)](https://github.com/elernonelma "elernonelma (1 commits)")[![salvatorecordiano](https://avatars.githubusercontent.com/u/2036080?v=4)](https://github.com/salvatorecordiano "salvatorecordiano (1 commits)")

---

Tags

hacktoberfestpharphpphpunitsymfonysymfony-applicationtesting-toolstestingphpunitparallel test

###  Code Quality

Static AnalysisPHPStan, Psalm, Rector

Type Coverage Yes

### Embed Badge

![Health badge](/badges/facile-it-paraunit/health.svg)

```
[![Health](https://phpackages.com/badges/facile-it-paraunit/health.svg)](https://phpackages.com/packages/facile-it-paraunit)
```

###  Alternatives

[brianium/paratest

Parallel testing for PHP

2.5k118.8M754](/packages/brianium-paratest)[phpunit/phpunit

The PHP Unit Testing framework.

20.0k910.7M134.8k](/packages/phpunit-phpunit)[behat/behat

Scenario-oriented BDD framework for PHP

4.0k96.8M2.0k](/packages/behat-behat)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[orchestra/testbench

Laravel Testing Helper for Packages Development

2.2k39.1M32.1k](/packages/orchestra-testbench)[infection/infection

Infection is a Mutation Testing framework for PHP. The mutation adequacy score can be used to measure the effectiveness of a test set in terms of its ability to detect faults.

2.2k26.2M1.8k](/packages/infection-infection)

PHPackages © 2026

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