EVERYTHING XIAOMI
Get listed

PropCheck

PropCheck is a Ruby library for property-based testing: it generates inputs and checks whether assertions hold across examples.

Place
#9 of 28
Score
5.9
PropCheck's website

What PropCheck is

PropCheck is a Ruby library for property-based testing: it generates inputs and checks whether assertions hold across examples. When a generated case fails, it tries to reduce that case to a smaller counterexample. Built-in generators cover integers, floats, strings, symbols, arrays, hashes, sets, dates, times, and datetimes. Developers can define custom generators with a DSL, whose API supports mapping and binding values, choosing alternatives, and weighted frequency selection. Before, after, and around hooks provide setup and cleanup around generated examples. The README gives examples for RSpec, MiniTest, test-unit, and plain Ruby, and says the gem has no external dependencies. Installation is through a Gemfile entry or `gem install prop_check`. PropCheck requires Ruby 2.5.1 or later and is released under the MIT License. The project lists stateful property testing as a possible separate future add-on. It also lists several items as unfinished before v1.0, including finalizing the testing DSL, configurable sample counts, and generator filtering. The Community library plan is free.

Good

  • Built-in generators cover common Ruby data types.
  • Failed cases are reduced toward minimal counterexamples.
  • Offers before, after, and around hooks.
  • README says it has no external dependencies.
  • MIT-licensed and free.

Watch out

  • Requires Ruby 2.5.1 or later.
  • Several project items are listed as unfinished before v1.0.
  • Stateful property testing may require a separate add-on.

Who it suits

PropCheck suits Ruby developers who want to check assertions across generated inputs and reduce failures to simpler counterexamples. It can be used with RSpec, MiniTest, test-unit, or plain Ruby.

Verdict

PropCheck gives Ruby projects generators, hooks, and failing-case shrinking, with examples for several test frameworks. Review the unfinished project items if you need features such as finalized DSL behavior or configurable sample counts.

Plans and prices

From PropCheck's own pricing page, checked 8 Oct 2026.

All about pricing
PlanPriceWhat it gives you
Community libraryFreeMIT licensed Ruby gem · requires Ruby >= 2.5.1

The facts

Each one read from PropCheck's own pages, with the date it was checked.

What it does

Current published version
RubyGems lists version 1.0.2, released March 14, 2025.checked 8 Oct 2026
Custom generators
Its generator API includes mapping, binding, choosing among alternatives, and weighted frequency selection.checked 8 Oct 2026
Database usage
For generated examples that use a database, the README recommends cleaning database state around each example and mentions the DatabaseCleaner gem.checked 8 Oct 2026
Dependencies
The README says PropCheck requires no external dependencies.checked 8 Oct 2026
Generator coverage
Listed built-in generators cover integers, floats, strings, symbols, arrays, hashes, sets, dates, times, and datetimes.checked 8 Oct 2026
Generators
It includes generators for common Ruby data types and a DSL for defining custom generators.checked 8 Oct 2026
Hooks
PropCheck provides before, after, and around hooks for setup and cleanup around generated examples.checked 8 Oct 2026
Installation
The README says to add `gem 'prop_check'` to a Gemfile or install it with `gem install prop_check`.checked 8 Oct 2026
License
The project is released under the MIT License.checked 8 Oct 2026
Project status
The README lists several items as unfinished before v1.0, including finalizing the testing DSL, configurable sample counts, and filtering generators.checked 8 Oct 2026
Purpose
PropCheck is a Ruby library for property-based testing that checks assertions against generated inputs.checked 8 Oct 2026
Ruby requirement
The gem requires Ruby version 2.5.1 or later.checked 8 Oct 2026
Shrinking
When a generated case fails, PropCheck attempts to simplify it to a minimal counterexample.checked 8 Oct 2026
Stateful testing
The README lists stateful property testing as a possible future separate add-on library.checked 8 Oct 2026
Support and contributions
The README invites bug reports and pull requests on GitHub.checked 8 Oct 2026
Test framework integrations
The README gives usage examples with RSpec, MiniTest, test-unit, and vanilla Ruby.checked 8 Oct 2026
Test hooks
It provides hooks for setup and cleanup around generated example cases.checked 8 Oct 2026
What it does
PropCheck is a Ruby library for property-based testing that generates inputs and checks whether assertions hold across them.checked 8 Oct 2026

Alternatives to PropCheck

All alternatives
  1. 1fast-check logo

    fast-check

    Free planOpen sourceWebAPILinuxSelf-hosted
    7.1Free plan
  2. 2

    ScalaCheck

    Free planLinuxmacOSWindows
    6.6Free plan
  3. 3

    Gopter

    Free planLinuxSelf-hosted
    6.4Free plan
  4. 4

    JSVerify

    Free planWebSelf-hosted
    6.4Free plan
  5. 5

    Racket QuickCheck

    Free planLinuxmacOSWindows
    6.4Free plan
  6. 6

    FsCheck

    Free planLinuxmacOSWindows
    6.3Free plan