Skip to content
SPECIFICTION
Get listed

Rapid

pgregory.net

Free plan Self-hosted
Visit pgregory.net
Spec score 7.1 #18 of 28 in Property-Based Testing Tools

Spec sheet

What it does
Rapid is a Go library for property-based testing that checks user-defined properties against automatically generated test cases.Read 3 Oct 2026 · github.com
License
Rapid is licensed under the Mozilla Public License Version 2.0.Read 3 Oct 2026 · github.com
Automatic minimization
When a failure is found, Rapid automatically minimizes the failing test case before presenting it.Read 3 Oct 2026 · github.com
Comparison limit
Compared with Go's testing.F.Fuzz, Rapid describes itself as better suited to structured data and state machine tests, while lacking coverage-guided feedback and mutations.Read 3 Oct 2026 · github.com
Configuration
Rapid's options can be set with flags prefixed -rapid. or corresponding RAPID_ environment variables.Read 3 Oct 2026 · github.com
Data generation
Its type-safe generators use generics and bias data generation toward small values and edge cases.Read 3 Oct 2026 · github.com
Dependencies
Rapid has no dependencies outside the Go standard library.Read 3 Oct 2026 · github.com
Failure persistence
Rapid supports persisting minimized failing test cases and automatically rerunning them.Read 3 Oct 2026 · github.com
Fuzzing integration
The MakeFuzz function lets a Rapid test be used as a fuzz target for Go's standard fuzzer.Read 3 Oct 2026 · github.com
Stability
The project says tests should continue to work across future releases with the same major version, subject to stated API-change exceptions.Read 3 Oct 2026 · github.com
Stateful testing
Rapid supports state machine testing.Read 3 Oct 2026 · github.com
Usage
Rapid tests run with the standard go test command.Read 3 Oct 2026 · github.com

Plans and prices

Rapid Free Open-source Go library · No dependencies outside the Go standard library Read 3 Oct 2026 · github.com

Every Rapid plan and price →

Where Specifiction places it

Alternatives to RapidAll alternatives →