Testing libraries like Quickcheck generate random data to break tests, then greedily apply a simplification function to prune them down to more legible examples.
This approach works well for small examples and fast tests, but as you move out of that area it starts to break down. In this talk I show how simple alternations to the greedy algorithm and some clever choices of simplification can drastically improve performance and example quality at the same time.
YOU MAY ALSO LIKE:
- Uncle Bob's Clean Code: Agile Software Craftsmanship (in London on 1st - 3rd November 2017)
- Whole Team Approach to Agile Testing (in London on 6th - 8th November 2017)
- Gojko Adzic's Specification by Example: From User Stories to Acceptance Tests (in London on 7th - 8th November 2017)
- Agile Testing & BDD eXchange 2017 (in London on 9th - 10th November 2017)
Greedy Algorithms for Testing
David is the primary author of Hypothesis and works and consults on it full time. Previously, he worked at Google and a series of London startups as a back end data engineer.