A drop-in replacement for parallel_tests that runs RSpec tests on multiple cores with incremental summarized output.
TurboTests is a Ruby gem that runs RSpec tests in parallel across multiple CPU cores to speed up test execution. It solves the problem of slow test suites by distributing tests across available processors while maintaining clean, readable output that doesn't interleave results from different processes like other parallel testing tools do.
Ruby developers working with RSpec test suites who need to reduce test execution time, particularly those with large test suites in Rails applications or other Ruby projects.
Developers choose TurboTests because it provides the performance benefits of parallel testing without the messy output of alternatives like parallel_tests, offering a cleaner developer experience while significantly reducing test suite runtimes.
Run RSpec tests on multiple cores. Like parallel_tests but with incremental summarized output. Originally extracted from the Discourse and Rubygems source code.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
TurboTests presents test results in a readable, non-interleaved format that mimics standard RSpec output, unlike parallel_tests which produces messy output, as demonstrated in the README comparisons.
It serves as a direct replacement for parallel_tests with a compatible CLI, making migration seamless for teams already using parallel testing solutions.
By running tests in parallel across CPU cores and logging runtimes to optimize future distributions, it significantly reduces test suite execution time for large projects.
Allows configuration of the number of processes used, defaulting to available CPUs, giving developers control over resource allocation based on their environment.
TurboTests is exclusively for RSpec and does not support other Ruby testing frameworks, restricting its use in mixed-framework projects.
The README explicitly states it will become obsolete once RSpec implements native parallel testing, making it a stopgap with uncertain long-term relevance.
Requires adding the gem to the Gemfile and configuring runtime logs, which adds complexity compared to using RSpec's built-in features or simpler tools.