Search⌘ K
AI Features

How Stateful Properties Run

Explore how stateful properties execute in PropEr by understanding the two phases of testing: abstract test scenario generation without system interaction, followed by applying commands to the real system with precondition checks and postcondition validations. Gain insights into command sequence generation, state transitions, and failure shrinking to build reliable property-based tests.

We'll cover the following...

Execution of stateful properties

PropEr divides the execution of a stateful test into two phases, one abstract and one real. The abstract phase is used to create a test scenario and is executed without any code from our actual system running. Its whole objective is to take the model and command generation callbacks and call these to build out the sequence of calls that will later be applied to the system.

Put visually, it looks like this:

...