FREEDOM251

Freedom251 › Property-Based Testing Tools

Rantly

Free plan Self-hosted

Visit Rantly Alternatives Pricing

Rantly's own site

What Rantly is

Rantly is a Ruby library for producing random test data and checking properties across generated values. Its recursive-descent interpreter returns values such as strings, integers, and floats, with generators for integers, ranges, floats, booleans, choices, weighted frequencies, arrays, strings, and hashes. The project provides a Test::Unit extension and documents extensions for Minitest and RSpec, so property checks can be used with those test runners. Checks run 100 times by default; you can change the count with an argument to `check` or through the `RANTLY_COUNT` environment variable. Optional shrinking can reduce failing values, but its search is capped at 1,024 operations, does not explore the entire failure tree, and leaves ordinary arrays and hashes unshrunk. Rantly is free, self-hosted software for Ruby, published under the MIT License. Install it with `gem install rantly` or add it to a Gemfile. The README states a Ruby requirement of 3.2 or higher; RubyGems lists version 3.0.0, dated October 21, 2024, as requiring Ruby 3.3.0 or higher. The project welcomes new contributors.

Who it suits

Rantly suits Ruby developers who want to generate varied test inputs and check properties using Test::Unit, Minitest, or RSpec. It is a fit for projects that can use a Ruby library and want optional shrinking to help narrow failing values.

What it does well

  • Generators cover numbers, booleans, choices, arrays, strings, and hashes.
  • Documented extensions support Test::Unit, Minitest, and RSpec.
  • Property-check repetitions can be changed with an argument or environment variable.
  • Optional shrinking can reduce failing values.
  • Published under the MIT License.

What to know first

  • Shrinking is capped at 1,024 operations and does not explore the full failure tree.
  • Ordinary arrays and hashes are not shrunk.
  • RubyGems lists Ruby 3.3.0 or higher for version 3.0.0.

Limits

Property checks run 100 times by default. Optional shrinking is limited to at most 1,024 operations, does not fully traverse the failure tree, and does not shrink ordinary arrays or hashes.

Plans

PlanBilled and limitsPrice
RantlyRuby library · MIT licenseFree

As github.com lists them, read 9 Oct 2026. The maker's own page has the final word.

Getting started

  1. Open the Rantly GitHub repository.
  2. Use Ruby 3.3.0 or higher for the listed RubyGems version 3.0.0.
  3. Install with `gem install rantly` or add Rantly to a Gemfile.
  4. Use its documented extension for Test::Unit, Minitest, or RSpec.
  5. Adjust the default check count with an argument to `check` or `RANTLY_COUNT` if needed.

Verdict

Choose Rantly if you need free Ruby generators and property checks with the listed test runners. Look elsewhere if you need ordinary arrays and hashes to shrink, or a shrinking search that explores the full failure tree.

Questions

How much does Rantly cost?

Rantly is free: its listed plan is free.

Which Ruby versions does it require?

The README says Ruby 3.2 or higher. RubyGems lists version 3.0.0 as requiring Ruby 3.3.0 or higher.

Which test runners does Rantly support?

The documentation describes extensions for Test::Unit, Minitest, and RSpec.

How many times does a property check run?

It runs 100 times by default. You can set the count with an argument to `check` or the `RANTLY_COUNT` environment variable.

Is Rantly open source?

Its code is published under the MIT License.

How can I install it?

Install it with `gem install rantly` or add it to a Gemfile.

Facts from Rantly's own pages

Data generators
Its generators include integers, ranges, floats, booleans, choices, weighted frequencies, arrays, strings, and hashes. · github.com, 9 Oct 2026
Implementation
Rantly describes itself as a recursive-descent interpreter whose methods return random values such as strings, integers, and floats. · github.com, 9 Oct 2026
Install
The README says to install it with `gem install rantly` or add it to a Gemfile. · github.com, 9 Oct 2026
License
The project code is published under the MIT License. · github.com, 9 Oct 2026
Maintainers
The project README welcomes new contributors. · github.com, 9 Oct 2026
Package release
RubyGems lists version 3.0.0 dated October 21, 2024. · rubygems.org, 9 Oct 2026
Platform requirement
RubyGems lists the required Ruby version for version 3.0.0 as >= 3.3.0. · rubygems.org, 9 Oct 2026
Property test count
Property checks run 100 times by default, with the count configurable by an argument to `check` or the `RANTLY_COUNT` environment variable. · github.com, 9 Oct 2026
Purpose
Rantly generates random test data and provides a Test::Unit extension for property-based testing. · github.com, 9 Oct 2026
Ruby requirement
The repository README says Rantly requires Ruby 3.2 or higher. · github.com, 9 Oct 2026
Shrinking
Optional shrinking can reduce failing values; the documented search is limited to at most 1024 shrinking operations and does not fully traverse the failure tree. · github.com, 9 Oct 2026
Shrinking limitation
The README says ordinary arrays and hashes are not shrunk. · github.com, 9 Oct 2026
Testing integrations
The README documents extensions for Test::Unit, Minitest, and RSpec. · github.com, 9 Oct 2026

Where Rantly stands on Freedom251

Look at these too