Skip to content
SPECIFICTION
Get listed

scalaprops

github.com

Free plan Linux
Visit github.com
Spec score 7.0 #22 of 28 in Property-Based Testing Tools

What it is

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.

Spec sheet

Purpose
Scalaprops is a property-based testing library for Scala.Read 9 Oct 2026 · github.com
License
The repository is licensed under MIT, whose text provides the software without warranty.Read 9 Oct 2026 · github.com
Deterministic testing
When a test fails, it emits its starting seed and supports rerunning with --seed=<value>.Read 9 Oct 2026 · github.com
Function generators
It provides generators for scala.FunctionN using Cogen, including non-constant functions.Read 9 Oct 2026 · github.com
Law checking
It supports flexible law checking and can use test identifiers other than String.Read 9 Oct 2026 · github.com
Parallel execution limit
The README setup example says parallel test execution is currently unsupported.Read 9 Oct 2026 · github.com
Randomness
It uses an immutable random number generator and does not use mutable scala.util.Random.Read 9 Oct 2026 · github.com
sbt plugin
The project recommends its sbt plugin, which provides a scalapropsOnly command with test class, method, and parameter selection.Read 9 Oct 2026 · github.com
Scalaz integration
It integrates with Scalaz and provides laws and Gen and Cogen instances for Scalaz types.Read 9 Oct 2026 · github.com
Supported runtimes
The README states support for Scala.js and Scala Native; its default random generator is Mersenne Twister for JVM and Scala Native and Tiny Mersenne Twister for Scala.js.Read 9 Oct 2026 · github.com
Test settings
It supports flexible parameter settings for each test.Read 9 Oct 2026 · github.com
Timeouts
The project lists timeout as soon as possible as a feature.Read 9 Oct 2026 · github.com

Plans and prices

Scalaprops Free Scala property-based testing library · Maven dependencies shown for test use Read 9 Oct 2026 · github.com

Every scalaprops plan and price →

Strong points and limits

Strong points

  • Generates non-constant scala.FunctionN values
  • Configurable parameters and law checking
  • Repeat failures with reported starting seeds
  • Scalaz laws, Gen, and Cogen integration
  • Free under the MIT license

Limits

  • Parallel test execution is unsupported
  • Linux is the listed platform
  • No free trial is offered

Who it suits

Scalaprops suits Scala developers writing property-based tests, law checks, or Scalaz-integrated tests. It is intended for Linux and also states support for Scala.js and Scala Native runtimes.

Verdict

Scalaprops focuses on configurable, repeatable property-based testing for Scala. Its immutable randomness, seed replay, runtime support, and sbt integration are useful, while parallel execution remains unavailable.

Where Specifiction places it

Alternatives to scalapropsAll alternatives →