QuickCheck: a lightweight tool for random testing of Haskell programs

K Claessen, J Hughes - Acm sigplan notices, 2011 - dl.acm.org
Acm sigplan notices, 2011dl.acm.org
QuickCheck is a tool which aids the Haskell programmer in formulating and testing
properties of programs. Properties are discribed as Haskell functions, and can be
automatically tested on random input, but it is also possible to define custom test data
generators. We present a number of case studies, in which the tool was successfully used,
and also point out some pitfalls to avoid. Random testing is especially suitable for functional
programs because properties can be stated at a fine grain. When a function is built from …
QuickCheck is a tool which aids the Haskell programmer in formulating and testing properties of programs. Properties are discribed as Haskell functions, and can be automatically tested on random input, but it is also possible to define custom test data generators. We present a number of case studies, in which the tool was successfully used, and also point out some pitfalls to avoid. Random testing is especially suitable for functional programs because properties can be stated at a fine grain. When a function is built from separately tested components, then random testing suffuces to obtain good coverage of the definition under test.
ACM Digital Library