Property Testing: Write Fewer Tests, Find More Bugs
summary
Presentation explains using property-based testing in Java (QuickCheck-style libraries and junit-quickcheck) to write fewer tests and find more bugs. It describes creating custom generators to match business rules, running hundreds to tens of thousands of examples with shrinking and deterministic seeds to reproduce counterexamples, and reports practical results: two bugs found quickly, test code reduced by over 2×, and increased confidence in critical modules (e.g., reversible VAT pricing revealed rounding errors).
AI-written summary · about
chapters (11)
- 0:00Start
- 0:12Property testing intro
- 3:50Why write property tests
- 8:17Types of properties
- 14:27Invariance properties
- 22:11Invariance migration
- 25:02Analogy refactoring
- 30:37Inversion data loss
- 39:42Shrinking counterexamples
- 42:52One year experience
- 47:27Q&A
related talks
46mProperty-based testing:You won't look at your tests the same way ever again
36mProperty Based Testing: From Theory to Practice
57mProperty Testing in Java
45mProperty based tests for the masses
51mProperty-Based Testing
54mAn Introduction to Property-based Testing
43mTesting: Property-based testing - let your testing library work(...)
30mProperty Based Testing: From Theory to Practice
