Skip to content

🧟 `cargo mutants` mutation testing for Rust

License

Notifications You must be signed in to change notification settings

dbugalo/cargo-mutants

 
 

Repository files navigation

cargo-mutants

https://github.com/sourcefrog/cargo-mutants

Tests crates.io libs.rs

cargo-mutants is a mutation testing tool for Rust. It helps you improve your program's quality by finding functions whose body could be replaced without causing any tests to fail.

Coverage measurements can be helpful, but they really tell you what code is reached by a test, and not whether the test really checks anything about the behavior of the code. Mutation tests give different information, about whether the tests really check the code's behavior.

The goal of cargo-mutants is to be easy to run on any Rust source tree, and to tell you something interesting about areas where bugs might be lurking or the tests might be insufficient.

The main documentation is the user guide at https://mutants.rs/.

Install

cargo install --locked cargo-mutants

Quick start

From within a Rust source directory, just run

cargo mutants

Project status

As of April 2023 this is an actively-maintained spare time project. It is very usable as it is and there is room for future improvements, especially in adding new types of mutation.

I expect to make releases about every one or two months, depending on how much time and energy I have available.

Constructive feedback is welcome but there is absolutely no warranty or guarantee of support.

Further reading

The main documentation is the user guide at https://mutants.rs/.

See also:

About

🧟 `cargo mutants` mutation testing for Rust

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 99.8%
  • Dockerfile 0.2%