Skip to content
SPECIFICTION
Get listed

Gopter vs PropEr

Gopter

github.com

PropEr

proper-testing.github.io

Side by side

FigureGopterPropEr
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
LinuxYes—
Self-hostedYesYes
Plans published21
Spec score · Property-Based Testing Tools8.6 (#2)7.5 (#14)
Known limitationThe README notes that Gopter does not provide ScalaCheck's Pretty feature and has no parallel commands yet.PropEr's generator language and Erlang type language differ for list expressions, allowing generators to specify lists of particular lengths and element types.
LicenseThe repository identifies Gopter as MIT licensed.PropEr is open-source software distributed under the GPL, version 3 or later.
PurposeGopter is a Go property-testing library that brings ideas from ScalaCheck and QuickCheck to Go.PropEr is a tool for automated, semi-random, property-based testing of Erlang programs.
Stateful testingGopter supports stateful tests.It can also be used for model-based random testing of stateful systems.

Plans

Gopter

  • GopterFree
  • MIT-licensed packageFree

Gopter pricing →

PropEr

  • PropErFree

PropEr pricing →

In their own words

Gopter

Gopter is a free Go module for property-based testing. It creates properties from conditions and generated inputs, then checks whether those properties hold. Its generators provide more control than Go's testing/quick package and can be composed with operations such as Map, FlatMap, SuchThat, and WithShrinker. When a property fails, shrinkers seek a smaller value that still demonstrates the failure. Gopter also includes a generator for regular-expression matches and supports stateful tests based on arbitrary commands. Properties can run with Go's testing.T through TestingRun, and the gopter/convey package provides helpers for using Gopter inside GoConvey tests. Console and formatted reporters present test results. The project declares Go 1.20 and is distributed under the MIT License. Its documentation covers the gopter, gen, prop, arbitrary, commands, and convey packages. The README identifies two omissions: ScalaCheck's Pretty feature is not provided, and parallel commands are not available yet.

Visit github.com

PropEr

PropEr is a free, open-source testing tool for Erlang programs. It performs automated, semi-random property-based testing and can generate input data from Erlang type declarations. Functions can be tested automatically from information in their Erlang specifications, while properties are written as Erlang expressions with predefined macros. PropEr also supports model-based random testing for stateful systems and targeted property-based testing using search-based techniques. Failing cases can be shrunk, and the project supports EUnit and Common Test. Constraints that Erlang’s type language cannot express can be handled with custom generators; filtering may keep trying random values until one passes. The generator language differs from Erlang’s type language for list expressions, including support for particular list lengths and element types. PropEr is self-hosted, supports Erlang, and is distributed under GPL version 3 or later. The guide describes installation from GitHub source, with make, or through Homebrew.

Visit proper-testing.github.io