Skip to content
SPECIFICTION
Get listed

Racket QuickCheck vs scalaprops

Racket QuickCheck

docs.racket-lang.org

scalaprops

github.com

Side by side

FigureRacket QuickCheckscalaprops
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYes—
macOSYes—
LinuxYesYes
Plans published11
Spec score · Property-Based Testing Tools8.2 (#4)7.0 (#22)
PurposeQuickcheck tests program specifications by running properties against randomly generated test inputs.Scalaprops is a property-based testing library for Scala.

Plans

Racket QuickCheck

  • QuickcheckFree

Racket QuickCheck pricing →

scalaprops

  • ScalapropsFree

scalaprops pricing →

In their own words

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.

Visit docs.racket-lang.org

scalaprops

Scalaprops is a free Scala property-based testing library for Linux. It generates test data, including non-constant scala.FunctionN values through Cogen, and lets each test define flexible parameters. Law checking is configurable, with identifiers that may use types other than String. Scalaz integration supplies laws plus Gen and Cogen instances for Scalaz types. Randomness uses an immutable generator rather than mutable scala.util.Random. Failed tests report their starting seed, which can be passed again with --seed= for repeatable runs. The README states support for Scala.js and Scala Native, using Mersenne Twister by default on JVM and Scala Native and Tiny Mersenne Twister on Scala.js. An sbt plugin adds scalapropsOnly selection by test class, method, and parameter. ScalapropsFramework and sbt are listed test runners. Parallel test execution is unsupported.

Visit github.com