New: TestSprite CLI is Now Live!

A Verifier for the Loop, Not Another Player In It.

Inside Claude Code, Cursor, or Codex, you don't type CLI flags — you just say: "Set up TestSprite for this repo and seed a starter test suite, then smoke-run the most important flow." The agent reads your routes and handlers, creates the tests, and runs them — a second, independent pass on its own work, not another draft to trust blindly.

Wired Into 8 Coding Agents, Directly From the CLI

ClaudeCursorCopilotCodexWindsurfClineAntigravityKiro
Say "verify this change with TestSprite before you call it done" — and mean it literally. A drafted-but-unexecuted test plan doesn't satisfy that instruction. Only a verdict does: pass, or fail, decided by actually running it.

"Set up TestSprite for this repo and seed a starter test suite"

The agent reads your routes, handlers, and key flows, creates a project, and authors roughly 8–15 tests with concrete, observable assertions — batch-created, not typed one at a time.

"Verify this change with TestSprite before you call it done"

Runs the test to a verdict — pass or fail — instead of stopping at a drafted plan. Writing a test isn't the same claim as running it.

"Create a test for the checkout happy path and run it to a verdict"

Targeted coverage for one flow, on demand, with the same "run it, don't just draft it" discipline as the full suite.

Suggest What You Need

The failure bundle — root cause, screenshot, DOM snapshot, fix recommendation — is structured JSON, so an agent can parse it and decide its next move without a human in between.

You: "Set up TestSprite for this repo and seed a starter test suite,
      then smoke-run the most important flow."

# the agent runs this on your behalf — you never type it:
$ testsprite setup
$ testsprite test create-batch starter-suite.json
  ✓ 11 tests created from your routes and handlers

$ testsprite test run --project prj_8f2a --ids TC_checkout,TC_login --wait
  ✓ TC_checkout_happy_path   passed
  ✓ TC_login_success         passed

"Drafted" Isn't "Done"

Say "run it to a verdict" and mean it — a test plan that exists but never executed doesn't satisfy that instruction. Only pass or fail does, and every failure comes back as a structured bundle the agent can act on itself.

Built for Unattended Runs

Reads Your Codebase First

The onboarding skill scans your routes, handlers, and key flows before writing a single test — coverage that starts from what your product actually does, not a guess.

Stability Scoring

testsprite test flaky <testId> tells the agent whether a failure is a real regression or a flaky test, before it burns a fix attempt on the wrong problem.

Free Community Version

Offers a free community version, making us accessible to everyone.

Cancel Mid-Run

testsprite test cancel <runId> stops an in-flight run the moment the agent — or you — decides it's not needed.

Trusted By Businesses Worldwide

"TestSprite offers rich test case generation, clear structure, and easy-to-read code. It also supports simple online debugging with the ability to quickly expand by generating new test cases."

"TestSprite's automation helps us reduce tons of manual work. The developers can easily catch and resolve bugs earlier in the development process."

FAQ

What do I actually say to set this up?

Inside Claude Code, Cursor, or another supported agent: "Set up TestSprite for this repo and seed a starter test suite, then smoke-run the most important flow." The agent handles the rest — no flags to memorize.

What does "seed a starter test suite" mean, concretely?

The agent reads your codebase — routes, handlers, key flows — creates a TestSprite project, authors roughly 8–15 tests with concrete, observable assertions, batch-creates them, and runs just the 2–3 highest-value happy paths rather than the full suite.

Why can't the coding agent just test its own code?

It can, but it's grading its own homework — its tests inherit whatever it misunderstood about the requirements. testsprite runs in a separate context, driving a real browser or making real API calls, so it catches the class of bug that self-testing structurally can't.

How do I make sure the agent doesn't just draft a test and call it done?

Say "verify this change with TestSprite before you call it done," or "run it to a verdict." That phrasing matters — a drafted-but-unexecuted plan doesn't satisfy it, only an actual pass or fail does.

What does the agent get back on a failure?

A structured JSON result with a full bundle: failing step, screenshot, DOM snapshot, root-cause hypothesis, fix recommendation — everything it needs to attempt a fix without asking a human first.

Does this need CI, or does it work for a solo overnight run?

Either. It's the same CLI whether it's running as a step in GitHub Actions or inside a single long-running agent session on your own machine.

Give Your Agent's Loop an Honest Verifier.