Skip to content
SPECIFICTION
Get listed

Muter vs pytest-gremlins

Muter

github.com

pytest-gremlins

github.com

Side by side

FigureMuterpytest-gremlins
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
macOSYes—
Linux—Yes
Self-hostedYes—
Plans published11
Spec score · Mutation Testing Tools7.5 (#14)7.7 (#10)
IntegrationsThe README documents Xcode integration, Homebrew installation, and configuration support for Xcode projects and workspaces and Swift Package Manager.The documentation describes compatibility with pytest-xdist and a GitHub Action for running mutation tests and enforcing a score threshold.
PurposeMuter is a mutation testing utility for assessing the quality of Swift test suites.pytest-gremlins is a pytest plugin that injects small code mutations and checks whether tests catch them.
ReportsMuter can output reports as plain text, JSON, HTML, or Xcode issue navigator results.It supports console, HTML, and JSON reports, including multiple report formats in one run.

Plans

Muter

  • Open-source MuterFree

Muter pricing →

pytest-gremlins

  • pytest-gremlinsFree

pytest-gremlins pricing →

In their own words

Muter

Muter is a free, open-source mutation testing utility for Swift test suites on macOS. It changes code in a complete copy of the codebase, leaving the original untouched, then reports mutation scores for the full suite and individual files. Runs can happen in Xcode, from the command line or incrementally in continuous integration. Configuration covers Xcode projects, workspaces and Swift Package Manager. Reports can be plain text, JSON, HTML or Xcode issue navigator results, including surviving mutants. Documented operators replace relational operators, remove side effects, change logical connectors and swap ternary expressions. Muter supports projects tested with xcodebuild, including iOS, macOS, tvOS and watchOS applications, but the utility runs only on macOS 10.15 or newer. It supports Swift, not Objective-C. Any test target or suite can be used with Swift application code, although UI tests may take a long time. The project states that it has no network access and collects no analytics.

Visit github.com

pytest-gremlins

pytest-gremlins is a pytest plugin for checking whether an existing test suite catches small changes to code. It runs mutation tests against Python projects and can report results in the console, HTML, or JSON, including multiple formats in one run. Getting started requires Python 3.11 or later, pytest 7.0 or later, and existing tests; installation is documented with pip, uv, and Poetry. The project’s quick-start command is `pytest --gremlins`. To manage execution, it uses mutation switching, coverage-guided test selection, incremental analysis, and parallel execution, and it works with pytest-xdist. Options can be set in `pyproject.toml` or with command-line flags, while inline pragmas can pardon specific mutations. A GitHub Action can run the checks and fail a workflow if its score misses a threshold; CI examples also cover GitLab CI, CircleCI, and Dagger. It is a free, MIT-licensed package for Linux, classified as Alpha. The guide warns that an initial run may take 10–100 times as long as a normal test run, though caching can shorten later runs. It also notes that equivalent mutations can make a perfect score unattainable and unnecessary.

Visit github.com