Sunday, October 25, 2026 4,350 lists 78,096 records on file
List your app or device

  1. Home
  2. Mutation Testing Tools
  3. Mutatest

Mutatest

What it is

Mutatest is a free command-line diagnostic tool for Python projects that checks whether tests catch small code mutations. It generates valid mutants using Python’s Abstract Syntax Tree grammar and changes local __pycache__ files rather than source files. When coverage data is available, it can limit mutation targets to lines marked covered. Mutation locations and candidate changes are sampled randomly; a seed can make trials reproducible. Command-line controls include run modes, mutation categories, file exclusions, timeouts, output reports, and thresholds for surviving mutants. An API supports custom mutation controls. The documentation describes running test commands such as pytest and using coverage data to filter targets. Mutatest can raise an exception when the number of surviving mutants meets a configured threshold, which can be used in an automated CI stage. It supports Linux, macOS, and Windows; installation requires Python 3.7 or 3.8. Multiprocessing is available on Python 3.8, but not 3.7. It is free and open source under the MIT License.

For and against

For

  • Restricts targets to covered lines when coverage data is available
  • Seeded trials can be reproducible
  • Offers command-line controls and a custom-control API
  • Can raise an exception at a survivor threshold
  • Runs on Linux, macOS, and Windows

Against

  • Installation requires Python 3.7 or 3.8
  • Only pytest has been tested to date
  • Parallelization is unsupported on Python 3.7
  • Repeated test-suite runs can make mutation testing slow

The verdict

Mutatest provides mutation-based diagnostics with coverage filtering, reporting, and a configurable survivor threshold. Its Python version requirements and documented runtime limitations are important to consider before using it across a full codebase or in frequent commit runs.

Who it suits

Mutatest suits Python developers who want a diagnostic check of whether their tests catch small code changes. It can also fit automated runs that use a surviving-mutant threshold, provided the project uses a supported Python version.

Plans and prices

Mutatest

Free

Free and open source under the MIT License

Every plan, in full

On the record

API
Mutatest includes an API for custom mutation controls.mutatest.readthedocs.io · read 2 Oct 2026
API objects
The documented API centers on Genome, GenomeGroup and Mutant objects.mutatest.readthedocs.io · read 15 Oct 2026
AST mutation engine
Mutations are generated from Python's Abstract Syntax Tree grammar.mutatest.readthedocs.io · read 15 Oct 2026
CI use
Mutatest can raise an exception when surviving mutants meet a configured threshold, for use in automated runs such as a continuous integration stage.mutatest.readthedocs.io · read 2 Oct 2026
CLI configuration
Settings can be supplied through mutatest.ini or setup.cfg sections named mutatest or tool:mutatest.github.com · read 15 Oct 2026
Controls
The command line supports run modes, mutation category selection, file exclusions, timeouts, output reports, and survivor thresholds.mutatest.readthedocs.io · read 2 Oct 2026
Coverage
When coverage data is available, mutation targets can be restricted to lines marked as covered.mutatest.readthedocs.io · read 2 Oct 2026
Coverage guidance
Coverage data can restrict mutation targets to code executed by tests.mutatest.readthedocs.io · read 15 Oct 2026
Custom API
The package exposes an API for custom mutation controls.mutatest.readthedocs.io · read 15 Oct 2026
Diagnostic positioning
The installation guide describes Mutatest as a diagnostic tool and cautions that running a full suite repeatedly can be slow for continuous integration.github.com · read 15 Oct 2026
Documentation depth
Documentation includes installation, command-line controls, API reference, API tutorial, mutation operators and contributing guidance.mutatest.readthedocs.io · read 15 Oct 2026
Execution modes
The command line supports fast and detection or survival stopping modes, including f, s, d and sd.github.com · read 15 Oct 2026
Independent activity record
Ecosyste.ms reported the last repository push as February 17, 2023.awesome.ecosyste.ms · read 15 Oct 2026
Independent popularity record
Ecosyste.ms reported 97 stars, 18 forks and two watchers when it last synced the repository.awesome.ecosyste.ms · read 15 Oct 2026
Independent repository record
Ecosyste.ms records the repository as created on December 22, 2018, with MIT licensing.awesome.ecosyste.ms · read 15 Oct 2026
Install channels
Installation is documented through pip, conda-forge or a local source checkout.mutatest.readthedocs.io · read 15 Oct 2026
Integrations
The documentation describes running test commands such as pytest and using coverage data to filter mutation targets.mutatest.readthedocs.io · read 2 Oct 2026
Known limitation
The documentation warns that repeated test-suite runs can make mutation testing slow, so it is intended as a diagnostic tool rather than a run over an entire codebase on every commit.mutatest.readthedocs.io · read 2 Oct 2026

Alternatives to Mutatest

Every alternative, ranked