Hedgehog - QuickCheck, but better
hedgehog is a Haskell library for writing property-based tests similar to the more established QuickCheck: instead of “when passed [3, 1, 2], this function returns [1, 2, 3]”, you write “when passed a list of numbers, this function returns a list with the same elements in order”. properties are tested on a range of random values and provide far wider test coverage.
In this tutorial, you will get acquainted with the concepts of property-based testing and the specific benefits of hedgehog, like better error reporting and sound shrinking for free. With a little luck we’ll get as far as state machine testing like in the BOB QuickCheck talk.
Some experience with software development and writing tests would be great. Knowledge of QuickCheck is not required. Material and exercises will be provided soon.
This session is held on in Main Room