awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
grosser avatar

grosser/parallel_tests

0
View on GitHub↗
3,493 estrellas·514 forks·Ruby·2 vistas

Parallel Tests

This project is a parallel test runner and shell command executor designed to reduce total runtime by executing test suites across multiple CPU cores. It functions as a test suite load balancer and a CI test process manager that coordinates global setup, teardown, and exit codes for continuous integration pipelines.

The tool acts as a test database orchestrator by creating and managing unique database instances mapped to parallel processes, which prevents data collisions. It distributes tests into balanced groups based on file size or recorded runtimes to optimize execution time and avoid bottlenecks.

The system provides capabilities for isolating test environments through unique environment identifiers, filtering test execution via patterns, and capturing interleaved output into dedicated logs. It also supports executing tests on remote machines and terminating all running groups immediately upon a single failure.

Features

  • Parallel Test Execution - Runs test suites across multiple CPU cores simultaneously to reduce the total time required for a full test cycle.
  • Test Database Provisioners - Creates and manages unique database instances mapped to parallel processes to prevent data collisions.
  • Parallel Command Execution - Executes any shell command across multiple processes, assigning each a unique process identifier.
  • CI Pipeline Optimizers - Optimizes automated checks in CI environments by balancing test workloads based on runtime or file size.
  • Environment Isolation - Provides process-level isolation using unique environment identifiers to prevent data collisions in databases and caches.
  • Parallel Processing Utilities - Spawns multiple independent shell processes to execute test subsets across available CPU cores.
  • CI Test Process Managers - Coordinates global setup, teardown, and exit codes for parallel test suites within continuous integration pipelines.
  • Test Isolation - Ensures test execution environments remain independent by assigning unique identifiers to processes for separate databases and cache namespaces.
  • Test Grouping Utilities - Organizes tests into balanced groups for parallel execution using custom isolation rules or standard input definitions.
  • Workload Balancing - Distribute tests into groups based on size or runtime to prevent slow files from delaying the completion of the entire suite.
  • Parallel Database Orchestration - Creates and manages unique database instances mapped to parallel processes to prevent data collisions.
  • Runtime-Based Balancing - Distribute tests across processes using recorded runtimes to prevent slow test groups from delaying the total execution time.
  • Test Suite Partitioning - Splits large test suites into balanced, parallelizable chunks for distribution across machines.
  • Test Suite Partitioners - Distributes tests into balanced groups based on file size or recorded runtimes to optimize total execution time.
  • Test Execution Runners - Manages the splitting and parallel execution of test suites across multiple CPU cores to reduce total runtime.
  • Test Data Isolation - Manages multiple separate database instances mapped to parallel processes to prevent data collisions during concurrent execution.
  • Queued Parallel Command Executors - Runs arbitrary shell commands across multiple processes with unique environment identifiers for task distribution.
  • Shell Command Execution - Wraps arbitrary shell commands to distribute arguments and manage exit codes across concurrent executions.
  • Process Coordinators - Coordinates the lifecycle of parallel processes to handle global setup and teardown tasks.
  • Aggregated Exit Code Collectors - Combines exit codes from multiple parallel child processes into a single final result for CI pipeline signaling.
  • Immediate Failure Termination - Terminates all running test groups immediately after a single failure to provide faster feedback during development.
  • Database State Management - Purges or dumps database structures in parallel across all test environments to ensure a clean state.
  • Concurrent Log De-interleaving - Captures stdout and stderr from concurrent processes into separate logs to prevent interleaved terminal output.
  • Parallel Test Log Management - Captures results and failures from multiple concurrent processes into dedicated logs to avoid interleaving.
  • Test Execution Filtering - Allows running a specific subset of tests matching a regular expression to isolate functional areas.

Historial de estrellas

Gráfico del historial de estrellas de grosser/parallel_testsGráfico del historial de estrellas de grosser/parallel_tests

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a Parallel Tests

Proyectos open-source similares, clasificados según cuántas características comparten con Parallel Tests.
  • nextest-rs/nextestAvatar de nextest-rs

    nextest-rs/nextest

    2,828Ver en GitHub↗

    nextest is a high-performance test execution framework and Rust test runner designed to manage parallelism, retries, and timeouts. It serves as a test recording system that captures execution metadata and outputs into archives for later failure analysis and replay. The project distinguishes itself as a flakiness detection tool, identifying unstable tests through stress loops and automated retry policies. It also functions as a CI test orchestrator, capable of partitioning test suites across multiple workers and exporting results in standardized JUnit XML and JSON formats. The framework provi

    Rustcargo-plugincargo-subcommandflaky-tests
    Ver en GitHub↗2,828
  • sindresorhus/avaAvatar de sindresorhus

    sindresorhus/ava

    20,849Ver en GitHub↗

    Ava is a concurrent test runner for Node.js that executes test files in parallel using worker thread isolation to prevent global state leakage. It functions as a TAP-compliant tool, exporting results via the Test Anything Protocol for integration with external reporting systems. The framework distinguishes itself through a focus on execution speed and clarity, utilizing worker threads to run multiple test files simultaneously across CPU cores. It includes stack trace simplification to filter out internal framework noise and a value comparison utility that provides syntax-highlighted diffs for

    JavaScript
    Ver en GitHub↗20,849
  • avajs/avaAvatar de avajs

    avajs/ava

    20,849Ver en GitHub↗

    Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and isolation. It serves as a concurrent test executor that runs test files in parallel across multiple processes to reduce total runtime and prevent state leakage between suites. The project features a built-in snapshot testing framework that saves large data structures to disk and compares subsequent executions to detect regressions via diffs. It is also compatible with the Test Anything Protocol, allowing it to export results for use with external reporting tools. Its capability

    JavaScriptassertasyncasync-functions
    Ver en GitHub↗20,849
  • doctest/doctestAvatar de doctest

    doctest/doctest

    6,765Ver en GitHub↗

    doctest is a lightweight C++ unit testing framework and assertion library. It provides a single-header implementation that eliminates complex build dependencies, allowing developers to write and execute test cases directly within their source code. The framework is distinguished by its focus on compile-time performance and binary overhead. It uses conditional compilation guards to strip all testing logic and metadata from production binaries. Additionally, it features hierarchical subcases that re-execute parent setup code to isolate different execution paths within a single test case. Its c

    C++c-plus-pluscppcpp11
    Ver en GitHub↗6,765
Ver las 30 alternativas a Parallel Tests→

Preguntas frecuentes

¿Qué hace grosser/parallel_tests?

This project is a parallel test runner and shell command executor designed to reduce total runtime by executing test suites across multiple CPU cores. It functions as a test suite load balancer and a CI test process manager that coordinates global setup, teardown, and exit codes for continuous integration pipelines.

¿Cuáles son las características principales de grosser/parallel_tests?

Las características principales de grosser/parallel_tests son: Parallel Test Execution, Test Database Provisioners, Parallel Command Execution, CI Pipeline Optimizers, Environment Isolation, Parallel Processing Utilities, CI Test Process Managers, Test Isolation.

¿Qué alternativas de código abierto existen para grosser/parallel_tests?

Las alternativas de código abierto para grosser/parallel_tests incluyen: nextest-rs/nextest — nextest is a high-performance test execution framework and Rust test runner designed to manage parallelism, retries,… sindresorhus/ava — Ava is a concurrent test runner for Node.js that executes test files in parallel using worker thread isolation to… avajs/ava — Ava is a test runner for JavaScript and TypeScript designed to execute test suites with a focus on concurrency and… doctest/doctest — doctest is a lightweight C++ unit testing framework and assertion library. It provides a single-header implementation… thomhurst/tunit — TUnit is a comprehensive C# testing framework, mocking library, and fluent assertion tool. It utilizes source… onsi/ginkgo — Ginkgo is a behavior-driven development testing framework, assertion library, and test runner for Go. It provides a…