@hackage smallcheck0.2.1

Another lightweight testing library in Haskell.

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