Skip to content

Bobcat

Open source · Critter Stack

Bobcat

Executable specifications and test supervision

Specifications that read as requirements, and a supervisor that runs big integration suites honestly.

Bobcat lets you write ordinary xUnit, TUnit, NUnit, or MSTest methods that render as Given/When/Then specifications, with a vocabulary built for the Critter Stack: given these events, when this command is received or this request is posted, then these events, this read model, or this refusal. The specs are the documentation, and they stay honest because they run.

The Bobcat Supervisor splits a large integration suite across worker processes, isolates each worker's database, retries failures in a fresh process, and reports flakiness instead of hiding it. It already gates Wolverine's and CritterWatch's own builds.

What Bobcat Gives You

Projected specifications

Plain test methods become readable Given/When/Then specs in the console, the Bobcat UI, and CI reports.

Critter Stack vocabulary

GivenEvents, WhenReceived, WhenPosted, ThenEvents, ThenReadModel, ThenRefusedWith, and more, over Marten, Polecat, or Fisher.

From Event Model to specs

Import an Event Model and generate the specs for every slice, then implement until they are green.

The Supervisor

Suites split across workers with isolated databases, honest retries, and a named list of the tests that actually flaked.

Works with your test framework

xUnit v3, TUnit, NUnit, and MSTest, with CTRF and JUnit exports for any CI system.

Built for AI agents

Message activity reports and gathered failure messages give a coding agent exactly what it needs to fix the code, not the test.

Start Here

New to Bobcat? These 3 posts are the ones to read first, in order.

  1. 1Introducing Bobcat: Spec Driven Development and Better Integration Testing for the Critter StackBobcat is the new Critter Stack tool for Spec Driven Development and for making our own integration testing more reliable. It projects readable specifications out of the xUnit.net or TUnit tests you already have, brings back the table driven testing ideas from Storyteller, reports failures in a way an AI agent can actually use, and has a compiled Gherkin model for when Given/When/Then is the right fit.
  2. 2Succeeding with Test Automation using BobcatBobcat is the Critter Stack's new spec-driven integration testing framework, and we have already used it to make our own CI builds and local gating faster and more trustworthy. This is the test automation strategy behind it: fifteen recommendations, and where Bobcat does the job.
  3. 3Introducing the Bobcat Supervisor for Reliable .NET Integration SuitesBobcat.Supervisor splits a .NET integration test suite across worker processes, isolates each worker's database, retries failures in a fresh process without hiding them, and names the test that hung. It already runs Wolverine's CI and CritterWatch's test gate, and your test project doesn't need to reference Bobcat at all.

Latest on Bobcat

9 posts from the JasperFx blog cover Bobcat. Here are the most recent.

Critter Stack AI Skills 1.18: Caught Up With CritterWatch 1.2Critter Stack AI Skills 1.18: Caught Up With CritterWatch 1.2AI Skills 1.18 brings every CritterWatch skill up to the 1.2 MCP tools, checked tool by tool against the source: a new sagas skill, the get_command_outcome tool, dead letters ranged by failure time, event queries over bodies and metadata, and six corrections to advice that had gone wrong, including the Prometheus series names every Grafana example used.Alba 9 Is Nearly HereAlba 9.0 RC3 is the last release candidate before the biggest release Alba has had in years: host pooling for parallel integration tests, scenarios addressed by route name, JSON path and problem details assertions, endpoint coverage and authorization audits, time travel with a fake TimeProvider, server-sent events, and a rebuilt docs site. All of it is Jaedyn's work. Plus the breaking changes to read before you upgrade from Alba 8.Critter Stack in Review: October 12th to 30thCritter Stack in Review: October 12th to 30thThree weeks, 72 tagged releases, and 57 pull requests from 18 people outside JasperFx. The big themes were not losing messages, with a durable inbox and outbox hardening pass that closed a dozen community-reported ways a message could go missing; performance, from SQL Server index seeks to a thread pool thread the run command was quietly eating; shutting down cleanly; an async daemon that heals itself; and multi-tenancy at a scale we'd never tested before. Plus Marten's hard stream delete, Aspire parity in Wolverine, NServiceBus XML interop, and the upgrade notes you should read first.CritterWatch 1.1, Bobcat 1.0, AI Skills 1.17, and a First Look at StoatCritterWatch 1.1, Bobcat 1.0, AI Skills 1.17, and a First Look at StoatOne release wave, four products: CritterWatch 1.1 with 83 MCP tools, cron schedules, a Document Explorer and a long list of scalability fixes earned on real systems; Bobcat 1.0, the successor to Storyteller and our answer for spec-driven development; AI Skills 1.17; and the first public preview of Stoat.Critter Stack AI Skills 1.17: One Month of Releases, Checked Against the SourceCritter Stack AI Skills 1.17: One Month of Releases, Checked Against the SourceAI Skills 1.17 is the result of a review of everything Wolverine, Marten, CritterWatch, Bobcat and Stoat shipped in the last month, checked against the product source rather than the changelogs. Thirty-six skill changes, seven of them correcting advice that had quietly gone wrong, and the CritterWatch 1.1 paired updates that were waiting in 1.16.Succeeding with Test Automation using BobcatSucceeding with Test Automation using BobcatBobcat is the Critter Stack's new spec-driven integration testing framework, and we have already used it to make our own CI builds and local gating faster and more trustworthy. This is the test automation strategy behind it: fifteen recommendations, and where Bobcat does the job.

Get help with Bobcat

JasperFx builds and maintains Bobcat. A support plan gives your team direct access to us; consulting and workshops get a project moving.

The Rest of the Stack