![]() |
VOOZH | about |
Test Parallelization is in Preview. Complete the form to request access.
Request AccessTest Parallelization helps you reduce CI testing time by distributing test files across CI nodes or local workers. It uses Test Optimization data to detect which test files should run, estimate their duration, and create an execution plan.
Test Parallelization is designed to work with Test Impact Analysis. Test Impact Analysis skips tests that are not affected by a code change. Test Parallelization splits the remaining test files evenly across the selected CI nodes.
Use Test Parallelization when your test suite takes a long time to run. When used with Test Impact Analysis, Test Parallelization runs only files with non-skipped tests. It also helps reduce CI costs by choosing only as many CI nodes as needed, which can lower total CPU minutes.
Before setting up Test Parallelization, set up Test Optimization. Optionally, also set up Test Impact Analysis if you plan to use it with Test Parallelization. Then follow Set Up Test Parallelization to install ddtest and configure your CI provider.
Test Parallelization is supported for the following language and frameworks:
| Language | Frameworks |
|---|---|
| Ruby | RSpec, Minitest |
Ruby projects require the datadog-ci gem version 1.31.0 or later.
Test Parallelization uses the ddtest CLI to plan and run tests:
ddtest plan once to create a reusable .testoptimization/ plan..testoptimization/ directory with each CI job that runs tests.ddtest run --ci-node <CI_NODE_INDEX> in each CI job to execute only the files assigned to that CI node.For single-node and multi-node examples, see Set Up Test Parallelization.
Install ddtest, configure your CI provider, and customize how Test Parallelization splits test files.
| |