QuickCheck Evolution

John Hughes
Making Hard Stuff Easy with Functional Programming.

QuickCheck, our random testing tool, has a long track record of nailing serious and hard-to-find bugs and boosting quality, in software like dets (part of mnesia), Riak, and the embedded software in cars. QuickCheck is usually used manually and interactively: the developer invokes QuickCheck, finds a bug, and fixes it--rinse and repeat. But how should QuickCheck be deployed in the longer term? How should it be used for regression testing, continuous integration, etc? Can we derive further power from the QuickCheck approach to help software evolve? In this talk I will present new ideas in this direction under development at Quviq.

Talk objectives:

To show some of the cool things possible with property-based testing in the longer term.

Target audience:

Anyone interested in test automation.


John Hughes has been a functional programming enthusiast for more than thirty years, at the Universities of Oxford, Glasgow, and since 1992 Chalmers University in Gothenburg, Sweden. He served on the Haskell design committee, co-chairing the committee for Haskell 98, and is the author of more than 75 papers, including "Why Functional Programming Matters", one of the classics of the area. With Koen Claessen, he created QuickCheck, the most popular testing tool among Haskell programmers, and in 2006 he founded Quviq to commercialise the technology using Erlang.

Twitter: @rjmh

Back to conference page