Hermetically Sealed Box of Pain

By Carl Sverre

Most programmers encounter property-based testing as “QuickCheck, but for pure functions.”

But what happens when the thing you want to test isn’t a function? What if it’s a distributed database, a consensus protocol, or an entire network of stateful services yelling at each other over TCP?

This talk starts with classic property testing and scales the idea all the way up to Deterministic Simulation Testing (DST): controlling time, scheduling, crashes, retries, and randomness so entire systems become testable and searchable.

We’ll look at techniques and systems from QuickCheck, FoundationDB, TigerBeetle’s VOPR, Antithesis, and others, and explore the blurry line between testing, fuzzing, and lightweight formal methods.

This is a deep dive into how modern reliability testing actually works, aimed at people who enjoy distributed systems, weird bugs, and making computers fight for their lives in a hermetically sealed box of pain.