QuickCheck vs Racket QuickCheck
QuickCheck
hackage.haskell.orgRacket QuickCheck
docs.racket-lang.orgSide by side
| Figure | QuickCheck | Racket QuickCheck |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Property-Based Testing Tools | 7.3 (#16) | 8.2 (#4) |
| Generators | QuickCheck provides combinators for defining test data generators. | Built-in generators cover values including integers, real numbers, characters, lists, vectors, strings, and symbols. |
| Purpose | QuickCheck is a Haskell library for random testing of program properties by checking specifications against randomly generated cases. | Quickcheck tests program specifications by running properties against randomly generated test inputs. |
Plans
In their own words
QuickCheck
QuickCheck is a free Haskell library for testing program properties against randomly generated cases. Developers write specifications with QuickCheck combinators and can use combinators to define test-data generators and inspect generated-data distributions. It supports stateful testing, reproducible failures and shrinking failing cases. Monadic property testing is provided through the Test.QuickCheck.Monadic module. The package README describes adding QuickCheck to project dependencies for use in tests or a REPL. A companion package, quickcheck-instances, supplies instances for types in Haskell Platform packages, with additional dependencies. QuickCheck is licensed under BSD-3-Clause and lists dependencies including base, containers, random, splitmix, template-haskell and transformers. Hackage reports it tested with GHC versions from 8.10 up to but not including 9.15, as well as Hugs. A make-hugs script creates a Hugs-compatible version and may be useful for other non-GHC implementations. Hackage lists QuickCheck-2.18.0.0 as a downloadable Cabal source package. The listed package plan costs nothing.
Racket QuickCheck
Racket QuickCheck is a free package for checking program properties with generated inputs. A property is written as ordinary Racket code, and the package runs it against generated values; if a check fails, it reports a counterexample and the arguments that produced it. Its default configuration runs 100 successful tests, and helpers allow counts of 1,000, 10,000, or a custom number. Built-in generators cover integers, real numbers, characters, lists, vectors, strings, and symbols, and custom generators are supported. The `rackunit/quickcheck` integration raises a RackUnit exception when a check fails and includes the test count and counterexample arguments. Install the package with `raco pkg install quickcheck` or through DrRacket’s GUI package manager. It requires Racket v6.0 or newer. Racket provides installers for Linux, macOS, and Windows. The package listing reports a successful build and passing tests, while also noting missing license metadata. The listed price is free.