fastest is a tool for executing PHPUnit tests in parallel. Once LiipFunctionalTestBundle has been configured, it's easy to use fastest.
-
Install fastest:
composer require "liuggio/fastest=~1.4"
-
Configure the storage adapter
For example with SQLite, the app/config_test.yml
have to be changed to:
# ...
parameters:
doctrine.dbal.connection_factory.class: Liuggio\Fastest\Doctrine\DBAL\ConnectionFactory
doctrine:
dbal:
default_connection: default
connections:
default:
driver: pdo_sqlite
path: "%kernel.cache_dir%/__DBNAME__.db"
(Optional) Warmup the cache instead of creating it during tests:
php app/console cache:warmup --env=test
If your tests follow the following rules:
- the names test classes files end with
Test.php
- the files are located in a directory like
src/Acme/WebsiteBundle/Tests/
You can use the following command:
find src/*/*/Tests/ -name "*Test.php" | vendor/bin/fastest "vendor/bin/phpunit -c app/phpunit.xml.dist {};"
Otherwise you'll have to adapt the paths.