rutenspitz
А procedural macro to be used for testing/fuzzing stateful models against a semantically equivalent but obviously correct implementation (by jakubadamw)
arbtest
A minimalist property-based testing library (by matklad)
rutenspitz | arbtest | |
---|---|---|
6 | 4 | |
77 | 81 | |
- | - | |
2.2 | 4.4 | |
about 1 year ago | 2 months ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rutenspitz
Posts with mentions or reviews of rutenspitz.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-10.
-
Bridging Fuzzing and Property Testing
Inline documentation is lacking, but the README and the examples show it off reasonably well.
-
Writing a HashMap in Rust without unsafe
Also! You might want to verify the correctness of your implementation against some reference implementation - e.g. indexmap, or just an inefficient but obviously correct HashMap + Vec combination. https://github.com/jakubadamw/rutenspitz makes this very easy, and it did discover a few logic bugs in tinyvec, so I recommend giving it a go!
-
Announcing flashmap: a blazing fast, concurrent hash map
https://github.com/jakubadamw/rutenspitz allows comparing your implementation against a slower, reference implementation using a fuzzer. Might be helpful for correctness, but is not really useful for testing concurrency, as far as I can tell.
-
Unsafe Rust: How and when (not) to use it - LogRocket Blog
There's also https://github.com/jakubadamw/rutenspitz that is already usable, but I'm not aware of it being widely deployed.
-
fast-float - a super-fast float parser in Rust
By the way, https://github.com/rust-fuzz/auto-fuzz-test and/or https://github.com/jakubadamw/rutenspitz will help mitigate that, if anyone is willing to apply them.
arbtest
Posts with mentions or reviews of arbtest.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-10.
- Bridging Fuzzing and Property Testing
- Property-Based Testing in Rust with Arbitrary
-
How do you drive non-Rust tests?
See, eg, https://github.com/matklad/arbtest/blob/master/xtask/tests/tidy.rs
-
Tips for speeding up Rust builds times in CI (we use them for Nushell and got 2-3x speedup)
(the GHA than just runs this binary).
What are some alternatives?
When comparing rutenspitz and arbtest you can also consider the following projects:
cargo-fuzz - Command line helpers for fuzzing
arbitrary - Generating structured data from arbitrary, unstructured input.
fast-float-rust - Super-fast float parser in Rust (now part of Rust core)
roxmltree - Represent an XML document as a read-only tree.
json - Strongly typed JSON library for Rust