SmallCheck is a testing library that allows to verify properties for all test cases up to some depth. The test cases are generated automatically by SmallCheck.
Usefulness of such an approach to testing is based on the following observation:
If a program fails to meet its specification in some cases, it almost always fails in some simple case.
To get started with SmallCheck:
- Read the documentation
- If you have experience with QuickCheck, read the comparison of QuickCheck and SmallCheck
- Install it and give it a try!
cabal update; cabal install smallcheck
- Read the paper or other materials from the original authors of SmallCheck (note that that information might be somewhat outdated)
- If you see something that can be improved, please submit an issue
- Check out the source code at GitHub
Roman Cheplyaka is the primary maintainer.
Oliver Charles is the backup maintainer. Please get in touch with him if the primary maintainer cannot be reached.