Skip to content
SPECIFICTION
Get listed

Mutant vs mutmut

Mutant

github.com

mutmut

mutmut.readthedocs.io

Side by side

FigureMutantmutmut
Price from$20.83/mo—
Free planYes—
Free trial——
Open source——
Windows—Yes
macOSYesYes
LinuxYesYes
Self-hosted—Yes
Plans published40
Spec score · Mutation Testing Tools8.2 (#5)7.2 (#16)
PurposeMutant is mutation testing for Ruby that systematically modifies code and verifies that tests catch each change.mutmut is a mutation testing system for Python focused on ease of use.

Plans

Mutant

  • Open sourceFree
  • Commercial monthly$30 a month
  • Commercial yearly$250 a year
  • EnterprisePriced on request

Mutant pricing →

mutmut

No plans published.

mutmut pricing →

In their own words

Mutant

Mutant is Ruby mutation-testing software that changes code in controlled ways to check whether tests catch the changes. It alters arithmetic, logical and bitwise operators, removes statements, and changes return values. It works with RSpec, Minitest and Test::Unit, and supports incremental runs for CI. Supported Ruby versions are 3.2, 3.3, 3.4 and 4.0 for runtime, syntax and mutations. Rails support is verified for versions 7.2, 8.0 and 8.1, with parallel-worker database isolation for PostgreSQL and SQLite. Mutant runs on developers’ machines or in CI, and includes parallel execution and reports of surviving mutants. It cannot generate mutations for methods defined inside closures, including methods created with module_eval, class_eval, define_method or define_singleton_method. The open-source plan is free for public repositories with the full feature set. Commercial monthly pricing is $30 a month per developer; yearly pricing is $250 a year per developer. CI use requires no additional subscriptions.

Visit github.com

mutmut

mutmut is a free, open-source mutation testing system for Python. It makes small code changes called mutants so developers can check whether tests detect them. Its listed operators increment integer literals by one, change < to <=, and swap break and continue. The project supports pytest and remembers completed work for incremental runs, selecting tests to run for each mutant. An interactive terminal interface lets users browse mutants, write one to disk, and rerun individual cases after adding tests. Runs are described as parallel; configured coverage.py can restrict mutations to covered lines. The documentation also supports filtering with mypy or pyrefly, but not pyright or ty. For CI/CD, mutmut can export statistics and generate mutation-score badge JSON for a Shields endpoint. Configuration in setup.cfg or pyproject.toml can specify source paths and pytest selection arguments. It requires Python 3.10 or later and a system with fork support, so Windows users need WSL. Version 3 and later mutate code inside functions; version 2 uses a different model for code outside functions. The package is licensed under BSD-3-Clause.

Visit mutmut.readthedocs.io