Captain

Captain is an open source CLI that keeps your build green. It detects flaky tests, handles retrying and quarantining automatically, and partitions test files for parallel execution.

Check out the quickstart guide to get started!

Features

With Captain, you can:

  • Track, automatically retry, and quarantine flaky tests
  • Partition test suites to run in parallel jobs
  • Understand and debug test failures

With Captain's paid Cloud mode, you can:

  • Automatically re-balance parallelized test suites based on the latest test performance
  • Quarantine tests from the Cloud UI to mitigate issues with flaky or failing tests without having to make code changes
  • Get analytics on which flaky tests are the most problematic
  • See trends in test performance with 90 day retention
  • View aggregated and summarized test results for all partitions of a parallelized test suite run

For more information on Captain's feature set, view the Captain product page.

Captain integrates with your CI platform and your test framework to collect data. We currently support 17 test frameworks, but we're actively working on expanding the set of frameworks we support.

CI platforms

RWX

Learn how to integrate Captain with RWX

Read more

RWX logo

GitHub Actions

Learn how to integrate Captain with GitHub Actions

Read more

GitHub Actions logo

CircleCI

Learn how to integrate Captain with CircleCI

Read more

CircleCI logo

Buildkite

Learn how to integrate Captain with Buildkite

Read more

Buildkite logo

GitLab

Learn how to integrate Captain with GitLab

Read more

GitLab logo

And more...

Learn how to integrate Captain with any CI/CD platform

Read more

Test frameworks

Cucumber JS

Learn how to integrate Captain with Cucumber JS

Read more

Cucumber JS logo

Cucumber Ruby

Learn how to integrate Captain with Cucumber Ruby

Read more

Cucumber Ruby logo

Cypress

Learn how to integrate Captain with Cypress

Read more

Cypress logo

ExUnit

Learn how to integrate Captain with ExUnit

Read more

ExUnit logo

Ginkgo

Learn how to integrate Captain with Ginkgo

Read more

Ginkgo logo

go test

Learn how to integrate Captain with go test

Read more

go test logo

Jest

Learn how to integrate Captain with Jest

Read more

Jest logo

Karma

Learn how to integrate Captain with Karma

Read more

Karma logo

minitest

Learn how to integrate Captain with minitest

Read more

minitest logo

Mocha

Learn how to integrate Captain with Mocha

Read more

Mocha logo

PHPUnit

Learn how to integrate Captain with PHPUnit

Read more

PHPUnit logo

Playwright

Learn how to integrate Captain with Playwright

Read more

Playwright logo

pytest

Learn how to integrate Captain with pytest

Read more

pytest logo

RSpec

Learn how to integrate Captain with RSpec

Read more

RSpec logo

unittest

Learn how to integrate Captain with unittest

Read more

unittest logo

Vitest

Learn how to integrate Captain with Vitest

Read more

Vitest logo

xUnit

Learn how to integrate Captain with xUnit

Read more

xUnit logo