Proptest
proptest-rs.github.io
Spec sheet
- Purpose
- Proptest is a property testing framework for Rust inspired by Python’s Hypothesis framework.Read 1 Oct 2026 · proptest-rs.github.io
- Support
- Bug reports and questions are welcome through the project repository, and contributors are asked to include Rust version, Proptest version, and relevant operating-system details.Read 1 Oct 2026 · github.com
- Default test count
- The default number of successful test cases required for a test to pass is 256.Read 1 Oct 2026 · proptest-rs.github.io
- Failure minimization
- When a failure is found, Proptest automatically finds a minimal test case that reproduces it.Read 1 Oct 2026 · proptest-rs.github.io
- Failure persistence
- Failing cases are persisted under a proptest-regressions directory and replayed in later test runs.Read 1 Oct 2026 · proptest-rs.github.io
- Forking and timeouts
- Optional fork and timeout features run test cases in subprocesses and limit their execution time.Read 1 Oct 2026 · proptest-rs.github.io
- Generation model
- Generation and shrinking are defined per value rather than per type, which enables flexible composition.Read 1 Oct 2026 · proptest-rs.github.io
- Input generation
- Generation and shrinking are defined per value rather than per type.Read 1 Oct 2026 · proptest-rs.github.io
- Licensing
- The repository contains Apache-2.0 and MIT licenses.Read 1 Oct 2026 · github.com
- Maintenance model
- Proptest is maintained on a volunteer basis.Read 1 Oct 2026 · github.com
- Maintenance status
- The crate is feature-complete and mainly receives passive maintenance.Read 1 Oct 2026 · proptest-rs.github.io
- Minimal cases
- When a failure is found, Proptest automatically finds the minimal test case that reproduces it.Read 1 Oct 2026 · proptest-rs.github.io
- no_std limitations
- The no_std build does not provide failure persistence, forking, or features depending on crates such as regex.Read 1 Oct 2026 · proptest-rs.github.io
- no_std support
- Proptest has partial no_std support and requires a nightly compiler with alloc or std for memory allocation.Read 1 Oct 2026 · proptest-rs.github.io
- No-std limits
- Failure persistence, forking, and regex support are unavailable in the no_std build.Read 1 Oct 2026 · proptest-rs.github.io
- Rust version
- The current minimum supported Rust version is 1.88.Read 1 Oct 2026 · github.com
- State-machine testing
- Proptest supports state-machine testing for systems such as database APIs and client-server interactions.Read 1 Oct 2026 · proptest-rs.github.io
- Strategies
- Tests can use regular expressions, integer ranges, and other Strategy expressions to generate inputs.Read 1 Oct 2026 · proptest-rs.github.io
- WebAssembly
- Proptest can compile for WebAssembly targets, but this support is highly experimental and has had little substantial testing.Read 1 Oct 2026 · proptest-rs.github.io
- WebAssembly limits
- On WebAssembly targets, numeric strategies for i128 and u128 are unavailable.Read 1 Oct 2026 · proptest-rs.github.io
Where Specifiction places it
- Property-Based Testing Tools#20 of 287.0