Property based testing in Kazoo
summary
Kazoo uses PropEr and proper_statem to generate focused unit and stateful tests, including a custom HTTP shim for webhook and storage-plan validation. Property tests exercise KZ JSON nesting (controlling depth), an AMQP binding matcher and an LRU cache model with simulated time, run in CI at about 500 runs per PR, and repeatedly catch edge cases: race conditions on create/delete/recreate accounts, corruption paths, and a dedicated IP regression. Tests produce reproducible counterexamples and shrinking-based regression tests.
AI-written summary · about
chapters (9)
- 0:00Start
- 1:42Intro to Property Testing
- 3:06Property Tests
- 9:07Monitors
- 9:30Cache Mitigation
- 14:17Testing Our Api
- 23:29Bugs That We Found
- 26:05Advice
- 27:02General Advice
related talks
21mProperty-based testing - let your testing library work for you
51mProperty-Based Testing
46mProperty-based testing:You won't look at your tests the same way ever again
36mIntroduction to stateful property based testing
43mProperty-Based Testing - Examples from Business Applications
23mProperty based testing is a mindset
01h 31mIntroduction to Property-Based Testing
58mProperty Based Testing: Concepts and Examples
