This crate is a port of Haskell’s QuickCheck.
For detailed examples, please see the README.
In general, this crate considers the
Arbitrary implementations provided as
implementation details. Strategies may or may not change over time, which may
cause new test failures, presumably due to the discovery of new bugs due to a
new kind of witness being generated. These sorts of changes may happen in
semver compatible releases.
Arbitrarydescribes types whose values can be randomly generated and shrunk.
Testabledescribes types (e.g., a function) whose values can be tested.