Language Support for Property-Based Testing
summary
Argues that ergonomic property-based testing needs three language features: monad syntax for generators (lets libraries swap seed-passing, seed-splitting, or choice-tracking effects and gives shrinking for free), metaprogramming to eliminate allocation overhead and to auto-derive constrained generators (paper Fail Faster shows big speedups as binds increase; tools Specimen and Palamedes synthesize generators from predicates), and live visual feedback (a VS Code/Lean widget samples 1,000 times; TYKI study shows statistically significant improvement).
AI-written summary · about
chapters (8)
- 0:00Property-based testing intro
- 2:08Ergonomic PBT matters
- 5:40Generator effects abstraction
- 8:04Metaprogramming for PBT
- 10:29Automating generators
- 16:48Live PBT feedback
- 21:20Implicit PBT args
- 22:46PBT language features
related talks
26mSome Problems with Properties: A Study on Property-Based Testing in Industry
01h 24mIntroduction to Property Based Testing
23mProperty based testing is a mindset
20mUnlock The Power Of Property-Based Testing
45mProperty based tests for the masses
30mProperty Based Testing: From Theory to Practice
26mThe missing piece of testing
13mIntroduction to Property Testing in Javascript
