The QuickCheck package

[Tags:bsd3, library]

QuickCheck is a library for random testing of program properties.

The programmer provides a specification of the program, in the form of properties which functions should satisfy, and QuickCheck then tests that the properties hold in a large number of randomly generated cases.

Specifications are expressed in Haskell, using combinators defined in the QuickCheck library. QuickCheck provides combinators to define properties, observe the distribution of test data, and define test data generators.

[Skip to Readme]


Versions 1.0,,,, 2.1,,,, 2.1.1,, 2.1.2, 2.2, 2.3,,, 2.4,, 2.4.1,, 2.4.2, 2.5, 2.5.1,, 2.6, 2.7, 2.7.1, 2.7.2, 2.7.3, 2.7.4, 2.7.5, 2.7.6, 2.8, 2.8.1, 2.8.2, 2.9, 2.9.1, 2.9.2
Dependencies base (<4.8), extensible-exceptions, ghc, random, template-haskell (>=2.4) [details]
License BSD3
Copyright 2000-2012 Koen Claessen, 2006-2008 Björn Bringert, 2009-2012 Nick Smallbone
Author Koen Claessen <>
Maintainer QuickCheck developers <>
Stability Unknown
Category Testing
Home page
Bug tracker
Source repository head: git clone
this: git clone
Uploaded Thu Mar 7 15:08:33 UTC 2013 by NickSmallbone
Updated Mon Dec 29 23:01:45 UTC 2014 by HerbertValerioRiedel to revision 1
Distributions Arch:2.9.2, Debian:2.8.1, Fedora:2.8.2, FreeBSD:2.8.1, LTSHaskell:2.8.2, NixOS:2.9.2, Stackage:2.9.2, Tumbleweed:2.8.2
Downloads 175891 total (230 in the last 30 days)
3 []
Status Docs uploaded by user
Build status unknown [no reports yet]




base3Choose the new smaller, split-up base package.EnabledAutomatic
base4Choose the even newer base package with extensible exceptions.EnabledAutomatic
templatehaskellBuild Test.QuickCheck.All, which uses Template Haskell.EnabledAutomatic

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Maintainer's Corner

For package maintainers and hackage trustees

Readme for QuickCheck

Readme for QuickCheck-2.6

This is QuickCheck 2, a library for random testing of program properties.

=== Installation ===

Installation is done with Cabal:

$ cabal install

or, if you're missing the cabal command,

$ runghc Setup.lhs configure
$ runghc Setup.lhs build
$ runghc Setup.lhs install

If you get errors about Template Haskell, try

$ cabal install -f-templateHaskell

but please report this as a bug, letting us know about your GHC

=== Bugs ===

Please report bugs to the QuickCheck mailing list at

=== Documentation ===

$ runghc Setup.lhs haddock

generates API documentation in dist/doc/html/index.html