Help us improve
Share bugs, ideas, or general feedback.
From test-orchestrator
Orchestrates parallel test execution across Jest, Vitest, pytest, Playwright, Cypress in GitHub Actions/GitLab CI. Analyzes suites, shards tests, retries flakies, aggregates results.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin test-orchestratorHow this skill is triggered — by the user, by Claude, or both
Slash command
/test-orchestrator:orchestrating-test-executionThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Coordinate parallel test execution across multiple test suites, frameworks, and environments. Manages test splitting, worker allocation, result aggregation, and intelligent retry strategies.
Orchestrates parallel test suite execution with sharding, intelligent retry, and real-time reporting for Jest, Vitest, Playwright. Use for optimizing runs, handling flakiness, CI pipelines, and result analysis.
Optimizes CI/CD test pipelines with parallel sharding (Playwright/Jest/pytest), test splitting, flaky quarantine, reporting (Allure/ReportPortal/JUnit XML), quality gates, caching (Nx/Turborepo), and pre-commit hooks.
Runs complete test suite in pyramid order: unit, integration, E2E tests with fail-fast execution, coverage, parallel, and HTML reports.
Share bugs, ideas, or general feedback.
Coordinate parallel test execution across multiple test suites, frameworks, and environments. Manages test splitting, worker allocation, result aggregation, and intelligent retry strategies.
jest --shard=i/N or pytest -n auto.--shard=i/N or Cypress parallelization.@flaky or equivalent marker..github/workflows/test.yml, .gitlab-ci.yml, or equivalent)| Error | Cause | Solution |
|---|---|---|
| Shard produces zero tests | Uneven test distribution or incorrect shard index | Verify shard count matches actual test file count; use file-based splitting |
| Worker out of memory | Too many parallel processes on one runner | Reduce --maxWorkers or -n count; increase runner memory; use --workerIdleMemoryLimit |
| Test ordering dependency | Tests pass in isolation but fail in specific shard order | Add --randomize flag; fix shared state leaks; enforce test independence |
| Result aggregation mismatch | Missing shard results due to job timeout | Set job-level timeouts higher than test timeouts; add result upload as a separate step |
| CI cache miss slowing startup | Dependencies not cached between parallel jobs | Configure dependency caching per lockfile hash; use a shared setup job |
GitHub Actions matrix strategy for Jest sharding:
jobs:
test:
strategy:
matrix:
shard: [1, 2, 3, 4]
steps:
- run: npx jest --shard=${{ matrix.shard }}/4 --ci --reporters=jest-junit
- uses: actions/upload-artifact@v4
with:
name: results-${{ matrix.shard }}
path: junit.xml
merge:
needs: test
steps:
- uses: actions/download-artifact@v4
- run: npx junit-merge -d results-* -o merged-results.xml
pytest-xdist parallel execution:
pytest -n auto --dist worksteal -q --junitxml=results.xml
Playwright sharded execution:
npx playwright test --shard=1/3 --reporter=junit