Skip to content

facile-it/paraunit

2.x
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
src
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

facile-it/paraunit

PHP Version Stable release Unstable release composer.lock

Build status Coverage Status

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

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

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

Paraunit version Compatible PHPUnit Version Compatible Symfony Version
2.0 10+ 4.4, 5, 6
1.3 9.3+ 4.4, 5, 6
1.2 9.3+ 3.4, 4, 5
1.1 9.1, 9.2 3.4, 4, 5
1.0.* 7, 8 3.4, 4, 5
0.12.* 6, 7 2.8, 3, 4

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

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 if available (since it's the fastest), otherwise it uses Xdebug. If neither are available, it should always be able to use PHPDbg, 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, XML, Crap4j, PHP, text file and text to console.

Documentation

For more details about Paraunit and its usage, see the documentation