-
mockall
A powerful mock object library for Rust
-
serial_test
Allows for the creation of serialised Rust tests
-
proptest
Hypothesis-like property-based testing and shrinking
-
rusty-fork
Cross-platform library for running Rust tests in sub-processes using a fork-like interface
-
arbitrary
The trait for generating structured data from unstructured data
-
rstest
Rust fixture based test framework. It use procedural macro to implement fixtures and table based tests.
-
serial_test_derive
Helper crate for serial_test
-
assert_cmd
Test CLI Applications
-
test-log
A replacement of the #[test] attribute that initializes logging and/or tracing infrastructure before running tests
-
quickcheck
Automatic property based testing with shrinking
-
trybuild
Test harness for ui tests of compiler diagnostics
-
insta
A snapshot testing library for Rust
-
wiremock
HTTP mocking to test Rust applications
-
derive_arbitrary
Derives arbitrary traits
-
test-case
#[test_case(...)] procedural macro attribute for generating parametrized test cases easily
-
skeptic
Test your Rust markdown documentation via Cargo
-
tokio-test
Testing utilities for Tokio- and futures-based code
-
gix-index
A work-in-progress crate of the gitoxide project dedicated implementing the git index file
-
expect-test
Minimalistic snapshot testing library
-
rstest_macros
Rust fixture based test framework. It use procedural macro to implement fixtures and table based tests.
-
is_ci
Super lightweight CI environment checker. Just tells you if you're in CI or not without much fuss.
-
fail
Fail points for rust
-
serde_test
Token De/Serializer for testing De/Serialize implementations
-
assert_fs
Filesystem fixtures and assertions for testing
-
cargo-nextest
A next-generation test runner for Rust
-
libtest-mimic
Write your own test harness that looks and behaves like the built-in test harness used by
rustc --test
-
proptest-derive
Custom-derive for the Arbitrary trait of proptest
-
test-case-core
core functionality for parsing #[test_case(...)] procedural macro attribute for generating parametrized test cases easily
-
cranelift-control
White-box fuzz testing framework
-
test-case-macros
#[test_case(...)] procedural macro attribute for generating parametrized test cases easily
-
tracing-test
Helper functions and macros that allow for easier testing of crates that use
tracing
-
honggfuzz
Fuzz your Rust code with Google-developped Honggfuzz !
-
mockall_double
Test double adapter for Mockall
-
aliri_clock
Timing utilities used by the
aliri
family of crates -
httpmock
HTTP mocking library for Rust
-
testcontainers
integration-testing against docker containers from within Rust
-
ntest
Testing framework for rust which enhances the built-in library with some useful features
-
temp-env
Set environment variables temporarily
-
cov-mark
Manual coverage marks
-
mockito
HTTP mocking for Rust
-
junit-report
Create JUnit compatible XML reports
-
cool_asserts
A collection of useful testing assertions and utilities
-
uniffi_testing
a multi-language bindings generator for rust (testing helpers)
-
snapbox
Snapshot testing toolbox
-
snapbox-macros
Snapshot testing toolbox
-
test-context
providing custom setup/teardown for Rust tests without needing a test harness
-
file_diff
An atomic utility for diffing files in testing
-
rstest_reuse
Reuse rstest attributes: create a set of tests and apply it to every scenario you want to test
-
proptest-state-machine
State machine based testing support for proptest
-
test-strategy
Procedural macro to easily write higher-order strategies in proptest
-
tracing-test-macro
A procedural macro that allow for easier testing of crates that use
tracing
. Internal crate, should only be used through thetracing-test
crate -
temp-dir
temporary directory with cleanup
-
faux
mock structs
-
cucumber
testing framework for Rust, with async support. Fully native, no external test runners or dependencies.
-
datadriven
Rewritable table-driven testing
-
ci_info
current CI environment information
-
ui_test
A test framework for testing rustc diagnostics output
-
nextest-metadata
Structured access to nextest machine-readable output
-
ntest_timeout
Timeout attribute for the ntest framework
-
goose
A load testing framework inspired by Locust
-
trycmd
Snapshot testing for a herd of CLI tests
-
ntest_test_cases
Test cases for ntest framework
-
cargo-fuzz
A
cargo
subcommand for fuzzing withlibFuzzer
! Easy to use! -
nextest-filtering
Filtering DSL for cargo-nextest
-
static_assertions_next
Compile-time assertions to ensure that invariants are met
-
cucumber-codegen
Code generation for
cucumber
crate -
testing_logger
Supports writing tests to verify
log
crate calls -
test-fuzz-runtime
-
grcov
collect and aggregate code coverage data for multiple source files
-
yaml-rust2
A fully YAML 1.2 compliant YAML parser
-
claims
Assertion macros
-
colored-diff
Format the difference between two strings with ANSI colors
-
interpolate_name
procedural macro attribute for repetitive tests
-
tester
A fork of Rust’s
test
crate that doesn’t require unstable language features -
testcontainers-modules
Community maintained modules for Testcontainers for Rust
-
expectorate
comparing output to file contents with simple updating
-
ntest_proc_macro_helper
Provide helper functions for the procedural macros used in ntest
-
mock_instant
way to mock an std::time::Instant
-
codspeed
Core instrumentation library for CodSpeed
-
datatest-stable
Data-driven tests that work on stable Rust
-
goldenfile
testing library
-
codspeed-criterion-compat
Criterion.rs compatibility layer for CodSpeed
-
googletest
A rich assertion and matcher library inspired by GoogleTest for C++
-
test-fuzz-internal
-
tracing-fluent-assertions
An fluent assertions framework for tracing
-
dinghy-build
Cross-compilation made easier - helpers for build.rs scripts
-
dinghy-test
Cross-compilation made easier - see main crate cargo-dinghy
-
mutants
Decorator attributes to be used with cargo-mutants
-
test_bin
getting the crate binary in an integration test
-
temp_testdir
Little crate to use temp directory in crate. You can chose if delete it after use or not to debugging purpose.
-
thirtyfour
Selenium / WebDriver library for Rust, for automated website UI testing. Tested on Chrome and Firefox, but any webdriver-capable browser should work
-
serde_assert
Testing library for serde Serialize and Deserialize implementations
-
bolero-generator
value generator for testing and fuzzing
-
mocktopus
Mocking framework for Rust
-
insta-cmd
A command line extension to the insta testing library for Rust
-
generic-tests
Procedural macro to define tests and benchmarks generically
-
afl
Fuzzing Rust code with american-fuzzy-lop
-
assert2
assert!(...) and check!(...) macros inspired by Catch2, now with diffs!
-
bolero-engine
fuzz and property testing framework
-
sn_fake_clock
Fake clock for deterministic testing of code depending on time
-
rusoto_mock
AWS SDK for Rust - Request Mocking Helpers
-
googletest_macro
Procedural macros for GoogleTest Rust
-
cargo2junit
Converts cargo's json output (from stdin) to JUnit XML (to stdout)
-
assertables
macros
assert…!
for better testing, quality assurance, and runtime reliability -
rusty-forkfork
Cross-platform library for running Rust tests in sub-processes using a fork-like interface
-
tracing-capture
Capturing tracing spans and events, e.g. for testing
-
cargo-mutants
Inject bugs and see if your tests catch them
-
tls-api-stub
TLS API implementation that returns error on any operation
-
hamcrest2
A port of the Hamcrest testing library. Fork of original hamcrest-rust (which is unmaintained) with extra matchers, better docs etc.
-
bolero
fuzz and property testing front-end
-
axum-test-helper
Extra utilities for axum
-
sequential-test
Allows for the creation of sequential Rust tests
-
fakedata_generator
Generate fake data with various generators
-
test-binary
Manage and build extra binaries for integration tests as regular Rust crates
-
assertor
Fluent assertion library with readable failure messages
-
coverage-helper
Helper for <https://github.com/taiki-e/cargo-llvm-cov/issues/123>
-
test-casing
Parameterized test cases and test decorators
-
test-env-log
A replacement of the #[test] attribute that initializes logging and/or tracing infrastructure before running tests
-
factori
A factory library for Rust, inspired by FactoryBot. 🤖
-
partial-io
Helpers to test partial, interrupted and would-block I/O operations, with support for property-based testing through proptest and quickcheck
-
expectest
matchers and matcher functions for unit testing
-
yare
Lean parameterized test case library for Rust 🚀
-
parameterized
Procedural macro which brings a compact parameterized testing implementation to Rust (inspired by JUnit @ParameterizedTest)
-
r2r_actions
Internal dependency to the r2r crate
-
wraptest
way to run code before and after every unit test
-
pact_consumer
Pact-Rust module that provides support for writing consumer pact tests
-
buildkite-test-collector
Official Buildkite Test Analytics Collector for Rust
-
grammartec
The Nautilus grammartec
-
test-harness
a little test macro to wrap your tests with an arbitrary setup/teardown function
-
sample-test
Sampling strategies and machinery for testing arbitrary data
-
proptest-arbitrary-interop
Interop glue between arbitrary and proptest crates
-
thirtyfour-macros
Thirtyfour is a Selenium / WebDriver library for Rust, for automated website UI testing
-
fixt
minimum viable fixtures
-
contrafact
A trait for highly composable constraints ("facts") which can be used both to verify data and to generate arbitrary data within those constraints
-
galvanic-assert
comprehensive set of matcher-based assertions and expectations for easier testing. Supports checking properties of numbers, objects, enum variants, collections, panics, and more. Stuctural…
-
ctxbuilder
Context-based builders
-
expectrl
automating terminal applications in Unix like Don libes expect
-
bolero-kani
kani plugin for bolero
-
arbtest
A minimalist property-based testing library based on arbitrary
-
asserhttp
Fluent http response assertions
-
bolero-libfuzzer
libfuzzer plugin for bolero
-
futures_ringbuf
Mock Type implementing AsyncRead/AsyncWrite for testing and examples
-
cargo-afl
Fuzzing Rust code with american-fuzzy-lop
-
dockertest
control docker containers when running your integration tests
-
tls-api-test
TLS API without implementation
-
bolero-afl
afl plugin for bolero
-
rdev
Listen and send keyboard and mouse events on Windows, Linux and MacOS
-
file_test_runner
File-based test runner for running tests found in files
-
bolero-honggfuzz
honggfuzz plugin for bolero
-
test_dir
Easy creation of temporary file structure for test purpose
-
thirtyfour_sync
Thirtyfour is a Selenium / WebDriver library for Rust, for automated website UI testing. This crate is the synchronous version only. For async, see the
thirtyfour
crate instead. -
isotest
Enables a very specific unit testing pattern
-
gherkin_rust
A pure Rust implementation of the Gherkin (
.feature
file) language for the Cucumber testing framework -
assert_hex
display assert panics in hexadecimal {:#x?} format
-
test-casing-macro
Procedural macro for
test-casing
-
parameterized-macro
Attribute macro crate for parameterized tests
-
yare-macro
Attribute macro crate for the Yare parameterized tests library
-
trybuild2
Test harness for ui tests of compiler diagnostics (with support for inline tests)
-
two-rusty-forks
Cross-platform library for running Rust tests in sub-processes using a fork-like interface
-
libafl
Slot your own fuzzers together and extend their features using Rust
-
mockstream
Stream (Read+Write traits) implementations to be used to mock real streams in tests
-
automerge-test
testing automerge libraries
-
tokio-shared-rt
Allow
#[tokio::test]
to use a shared runtime -
assay
A super powered testing macro for Rust
-
is_close
Determine whether floating point numbers are close in value
-
demonstrate
Declarative testing framework
-
thepipelinetool_utils
utils used for thepipelinetool
-
galvanic-test
A testing framework for setting up and tearing up test fixtures/environments with support for parameterised test cases. This crate is part of galvanic---a complete test framework for Rust
-
env-test-util
Just a simple tool to manipulate environment variable in tests
-
speculate
An RSpec inspired minimal testing framework for Rust
-
marionette
implementing the client side of Gecko's Marionette remote automation protocol
-
assert
The package provides assertions for testing
-
toml-test-data
TOML test cases
-
group-runner
Group Rust executable output in GitHub logs
-
dylint_testing
testing Dylint libraries
-
libafl_targets
Common code for target instrumentation that can be used combined with LibAFL
-
mz_rusoto_mock
AWS SDK for Rust - Request Mocking Helpers
-
test-span
macro and utilities to do snapshot tests on tracing spans
-
libafl_bolts
Low-level bolts to create fuzzers and so much more
-
time-test
Measure how long your test cases take with one simple macro
-
pact_verifier
Pact-Rust support library that implements provider verification functions
-
kble
Virtual Harness Toolkit
-
waitfor
Retry a function until it succeeds, errors out, or a timeout/deadline is reached
-
unimock
A versatile and developer-friendly trait mocking library
-
geckodriver
Proxy for using WebDriver clients to interact with Gecko-based browsers
-
quickcheck_derive
Derives quickcheck traits
-
assert-panic
Assert that a panic happens, and optionally what (kind of) panic happens
-
ran
fast random numbers generation
-
rspec
Write Rspec-like tests with stable rust
-
toml-test
Verify Rust TOML parsers
-
dpl_test
Travis CI dpl test package
-
parameterized_test
A macro to support providing arguments to test functions
-
tree-splicer
grammar-based test case generator (black-box fuzzer)
-
fluentci-types
Programmable CI/CD engine without Containers, built on top of Nix ❄️
-
fake_instant
Fake clock for deterministic testing of code depending on time
-
fluentci-graphql
Programmable CI/CD engine without Containers, built on top of Nix ❄️
-
envtestkit
Test kit for logics with environment variable involvements
-
assert-tokenstreams-eq
Compares tokenstreams by applying rustfmt and using pretty_assertions to visualize differences
-
codspeed-bencher-compat
Bencher compatibility layer for CodSpeed
-
debugger_test_parser
parsing the output of a debugger and verifying the contents