The smallcheck package
SmallCheck is similar to QuickCheck (Claessen and Hughes 2000-) but instead of testing for a sample of randomly generated values, SmallCheck tests properties for all the finitely many values up to some depth, progressively increasing the depth used.
Folk-law: if there is any case in which a program fails, there is almost always a simple one.
Corollary: if a program does not fail in any simple case, it almost never fails.
Other possible sales pitches:
write test generators for your own types more easily
be sure any counter-examples found are minimal
write properties using existentials as well as universals
establish complete coverage of a defined test-space
display counter-examples of functional type
|Versions||0.2.1, 0.4, 0.5, 0.6, 0.6.1, 0.6.2, 1.0, 1.0.1, 1.0.2|
|Maintainer||Colin Runciman <Colin.Runciman@cs.york.ac.uk>|
|Upload date||Tue Mar 11 21:45:35 UTC 2008|
|Built on||ghc-6.10, ghc-6.12, ghc-6.8|
|Distributions||Fedora: 1.0.2, NixOS: 1.0.2, Debian: 0.6, FreeBSD: 1.0.2|