{"categories":[{"label":"Quality Assurance","url":"https://skillfed.io/packages/category/software-development-quality-assurance"}],"enrichment":{"capability":"Mutmut is a mutation testing system for Python that automatically modifies your code to verify your test suite catches the changes, helping identify gaps in test coverage.","skillfed_tags":["testing","code-quality","mutation-testing"],"use_cases":["Evaluate whether your test suite would catch real bugs by running it against mutated versions of your code.","Identify undertested functions or modules where mutants survive (tests don't fail when code is modified).","Incrementally improve test quality by applying mutants to disk and writing tests that catch them.","Optimize test suites by filtering mutants with coverage.py to focus on actually-executed lines.","Validate type-checked code by filtering out mutations that static type checkers would reject anyway."],"what_it_does":"Mutmut is a mutation testing framework that systematically modifies your Python code and reruns your tests to see if they catch the changes. By introducing small, deliberate bugs (mutants) into your source code, it reveals whether your test suite is actually detecting problems or just achieving high line coverage without meaningful assertions. The tool integrates with pytest, remembers previous work for incremental runs, and provides an interactive terminal UI for browsing and applying mutants to disk.\n\nYou run it with simple commands\u2014`mutmut run` to generate and test mutants, then `mutmut browse` to explore results interactively. It supports configuration via setup.cfg or pyproject.toml, allows you to exclude specific files or functions, and can filter mutants using coverage.py or type checkers like mypy to reduce noise. The main constraint is that it requires fork() support, making it unsuitable for native Windows (though WSL works).","worth_installing":"Yes. Mutmut is actively maintained, has no known vulnerabilities, low install friction, and solves a real problem\u2014verifying that your tests actually detect bugs rather than just achieving coverage numbers. It's particularly valuable if you want to move beyond line-coverage metrics to genuine test quality. The fork() requirement and occasional Rust compilation on some architectures are minor friction, not blockers."},"id":"mutmut","links":{"html":"https://skillfed.io/packages/mutmut","md":"https://skillfed.io/packages/mutmut.md","pypi":"https://pypi.org/project/mutmut/"},"maintenance":{"status":"active"},"meta":{"latest_release":"2026-07-31","license_spdx":"BSD-3-Clause","license_treatment":"permissive","name":"mutmut","python_support":"supports_current","summary":"mutation testing for Python 3"},"popularity":{"monthly_downloads":3598450,"position":2566,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"3.7.0"}
