Exploring Internal Shrinking Techniques in Property Based Testing

33
clicks
Exploring Internal Shrinking Techniques in Property Based Testing

Source: youtube.com

Type: Video

In this talk, Dennis Palmer discusses the intricacies of internal shrinking in property-based testing, focusing on the process of reducing random test data to the smallest, most readable failing cases. He shares his journey of contributing to open source libraries, specifically highlighting his work with the Elixir library `stream_data`. Palmer reviews various shrinking techniques: data type-based shrinking, lazy tree shrinking, and the innovative internal shrinking, which minimizes random data history effectively. He introduces `decorum`, a new Elixir library that implements internal shrinking for property-based testing, ensuring accurate and smaller test cases. This library uses a consistent pseudo-random number generator to maintain the integrity of test values. Palmer also demonstrates the practical implementation and benefits of `decorum` through live examples, indicating its potential for more reliable testing workflows within the Elixir ecosystem.

© HashMerge 2025