Skip to main content

What is Xcepto?

Xcepto is a declarative system-test framework for distributed systems. It replaces manual retries, sleeping, and exception handling with a state-machine-based execution model aligned with Given-When-Then semantics.

Why Xcepto?

Traditional system tests rely on implicit timing assumptions that lead to non-deterministic results. Artificial workarounds — retries, gates, Thread.Sleep — pollute behavioral specification into an unmaintainable mess.

This becomes especially problematic in distributed systems where events are asynchronous and ordering is not guaranteed. Forcing determinism through ad-hoc workarounds obscures what the test is actually verifying.

Xcepto eliminates these issues by executing tests as condition-driven state machines. Steps are not executed immediately — they are compiled into a chain of states. The test passes when all states are satisfied before a timeout.

Available Implementations

PlatformPackageSource
.NETXcepto, Xcepto.Rest, Xcepto.SSR, Xcepto.TestcontainersXcepto.NET
Javaorg.xcepto:xceptoj, xceptoj-rest, xceptoj-ssr, xceptoj-rabbitmqxceptoj

Choose Your Path