Wrapping Up
This chapter has shown you the basics of stateful property testing, based on a single simple model. We’ve been through the two phases of the test: the symbolic one, where the model is used to generate a sequence of commands that represents what the system should do, and the real one, where the symbolic sequence of commands is applied to the real system, and the results compared with what the model expects.
We’ve put these concepts in practice through a cache server modeled as a first-in-first-out list and showed that the model seems to hold fine under sequential operations. You’ve then seen how PropEr can take that same exact model and create a parallel version of it that could, with some amount of help, find concurrency bugs in our ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access