{"id":13636294,"url":"https://github.com/sourcefrog/cargo-mutants","last_synced_at":"2026-02-01T08:01:12.404Z","repository":{"id":40586851,"uuid":"404409118","full_name":"sourcefrog/cargo-mutants","owner":"sourcefrog","description":":zombie: Inject bugs and see if your tests catch them!","archived":false,"fork":false,"pushed_at":"2026-01-18T17:27:33.000Z","size":4021,"stargazers_count":1051,"open_issues_count":83,"forks_count":34,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-01-19T01:29:24.174Z","etag":null,"topics":["cargo","cargo-plugin","cargo-subcommand","mutation-testing","mutations","rust","rust-lang","testing"],"latest_commit_sha":null,"homepage":"https://mutants.rs/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sourcefrog.png","metadata":{"files":{"readme":"README.md","changelog":"NEWS.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null},"funding":{"github":"sourcefrog","ko_fi":"poolie","custom":["https://donate.stripe.com/fZu6oH6ry9I6epVfF7dfG00"]}},"created_at":"2021-09-08T15:56:21.000Z","updated_at":"2026-01-18T23:20:29.000Z","dependencies_parsed_at":"2023-02-10T00:45:28.867Z","dependency_job_id":"81fa6103-4805-4822-bb26-23318d2f9152","html_url":"https://github.com/sourcefrog/cargo-mutants","commit_stats":{"total_commits":728,"total_committers":6,"mean_commits":"121.33333333333333","dds":0.006868131868131844,"last_synced_commit":"765fca95e5a027367184867004620a28b1782046"},"previous_names":[],"tags_count":69,"template":false,"template_full_name":null,"purl":"pkg:github/sourcefrog/cargo-mutants","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Fcargo-mutants","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Fcargo-mutants/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Fcargo-mutants/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Fcargo-mutants/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sourcefrog","download_url":"https://codeload.github.com/sourcefrog/cargo-mutants/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sourcefrog%2Fcargo-mutants/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28973035,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-01T06:46:42.625Z","status":"ssl_error","status_checked_at":"2026-02-01T06:44:56.173Z","response_time":56,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cargo","cargo-plugin","cargo-subcommand","mutation-testing","mutations","rust","rust-lang","testing"],"created_at":"2024-08-02T00:00:59.569Z","updated_at":"2026-02-01T08:01:12.399Z","avatar_url":"https://github.com/sourcefrog.png","language":"Rust","readme":"# cargo-mutants\n\n\u003chttps://github.com/sourcefrog/cargo-mutants\u003e\n\n[![Tests](https://github.com/sourcefrog/cargo-mutants/actions/workflows/tests.yml/badge.svg?branch=main\u0026event=push)](https://github.com/sourcefrog/cargo-mutants/actions/workflows/tests.yml?query=branch%3Amain)\n[![crates.io](https://img.shields.io/crates/v/cargo-mutants.svg)](https://crates.io/crates/cargo-mutants)\n[![libs.rs](https://img.shields.io/badge/libs.rs-cargo--mutants-blue)](https://lib.rs/crates/cargo-mutants)\n[![GitHub Sponsors](https://img.shields.io/badge/Sponsor-%E2%9D%A4-%23db61a2.svg?\u0026logo=github\u0026logoColor=white\u0026labelColor=181717\u0026style=flat-square)](https://github.com/sponsors/sourcefrog)\n[![Donate](https://img.shields.io/badge/Stripe-Donate-blue)](https://donate.stripe.com/fZu6oH6ry9I6epVfF7dfG00)\n\ncargo-mutants helps you improve your\nprogram's quality by finding places where bugs could be inserted without\ncausing any tests to fail.\n\nCoverage measurements can be helpful, but they really tell you what code is\n_reached_ by a test, and not whether the test really _checks_ anything about the\nbehavior of the code. Mutation tests give different information, about whether\nthe tests really check the code's behavior.\n\nThe goal of cargo-mutants is to be _easy_ to run on any Rust source tree, and\nto tell you something _interesting_ about areas where bugs might be lurking or\nthe tests might be insufficient.\n\n**For more background, see the [slides](https://docs.google.com/presentation/d/1YDwHz6ysRRNYRDtv80EMRAs4FQu2KKQ-IbGu2jrqswY/edit?pli=1\u0026slide=id.g2876539b71f_0_0) and [video](https://www.youtube.com/watch?v=PjDHe-PkOy8\u0026pp=ygUNY2FyZ28tbXV0YW50cw%3D%3D) from my Rustconf 2024 talk.**\n\n**The main documentation is the user guide at \u003chttps://mutants.rs/\u003e.**\n\n## Prerequisites\n\ncargo-mutants can help on trees with non-flaky tests that run under `cargo test` or [`cargo nextest run`](https://nexte.st/).\n\n## Install\n\n```sh\ncargo install --locked cargo-mutants\n```\n\nYou can also install using [cargo-binstall](https://github.com/cargo-bins/cargo-binstall) or from binaries attached to GitHub releases.\n\n## Quick start\n\nFrom within a Rust source directory, just run\n\n```sh\ncargo mutants\n```\n\nTo generate mutants in only one file:\n\n```sh\ncargo mutants -f src/something.rs\n```\n\n## Integration with CI\n\nThe [manual includes instructions and examples for automatically testing mutants in CI](https://mutants.rs/ci.html), including incremental testing of pull requests and full testing of the development branch.\n\n## Help advance cargo-mutants\n\nIf you use cargo-mutants or just like the idea you can help it get better:\n\n* [Post an experience report in GitHub discussions](https://github.com/sourcefrog/cargo-mutants/discussions), saying whether it worked, failed, found interesting results, etc.\n* [Sponsor development](https://github.com/sponsors/sourcefrog)\n\n## Project status\n\nAs of August 2025 this is an actively-maintained spare time project. I expect to make [releases](https://github.com/sourcefrog/cargo-mutants/releases) about every one or two months.\n\nIt's very usable at it is and there's room for lots more future improvement, especially in adding new types of mutation.\n\nIf you try it out on your project, [I'd love to hear back in a github discussion](https://github.com/sourcefrog/cargo-mutants/discussions/categories/general) whether it worked well or what could be better:\n\n* Did it work on your tree? Did you need to set any options or do any debugging to get it working?\n* Did it find meaningful gaps in testing? Where there too many false positives?\n* What do you think would make it better or easier?\n\nThis software is provided as-is with no warranty of any kind.\n\n## Further reading\n\nSee also:\n\n* [cargo-mutants manual](https://mutants.rs/)\n* [How cargo-mutants compares to other techniques and tools](https://github.com/sourcefrog/cargo-mutants/wiki/Compared).\n* [Design notes](DESIGN.md)\n* [Contributing](CONTRIBUTING.md)\n* [Release notes](NEWS.md)\n* [Discussions](https://github.com/sourcefrog/cargo-mutants/discussions)\n","funding_links":["https://github.com/sponsors/sourcefrog","https://ko-fi.com/poolie","https://donate.stripe.com/fZu6oH6ry9I6epVfF7dfG00"],"categories":["Development tools","开发工具 Development tools","Crates","Rust"],"sub_categories":["Testing","测试 Testing","Mutation Testing"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsourcefrog%2Fcargo-mutants","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsourcefrog%2Fcargo-mutants","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsourcefrog%2Fcargo-mutants/lists"}