Tomasz works with functional languages for over 8 years and loves learning and teaching about concepts and techinques.
Property-based testing is a technique for writing tests that use a framework for creating test inputs and user-defined properties for validating outputs. Generating data allows finding bugs that would be impossible to catch by regular unit tests: e.g. too big to encode by hand. I'd like to present why is it worth getting into PBT by introducing successful usages of PBT for testing AUTOSAR, LevelDB and Dropbox. All those examples use stateful testing, so the next part of the talk describes steps to create a stateful test for a simple key-value store.
Introductory materials for PBT often focus on straightforward cases which are great for teaching but fail to show the true potential of PBT. My goal for this talk is a high-level overview that is both encouraging for beginners but also maps the road to mastering Property-Based Testing.