Muter vs MutPy
Muter
github.comMutPy
github.comSide by side
| Figure | Muter | MutPy |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| macOS | Yes | — |
| Linux | — | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Mutation Testing Tools | 7.5 (#14) | 7.9 (#7) |
| Integrations | The README documents Xcode integration, Homebrew installation, and configuration support for Xcode projects and workspaces and Swift Package Manager. | The documented test runner integrations are unittest and experimental pytest; no other integrations are listed. |
| Purpose | Muter is a mutation testing utility for assessing the quality of Swift test suites. | MutPy is a mutation testing tool for Python source code that evaluates the quality of software tests. |
| Reports | Muter can output reports as plain text, JSON, HTML, or Xcode issue navigator results. | MutPy can generate YAML and HTML reports and colorful console output. |
Plans
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.
MutPy
MutPy is a mutation testing tool for Python that checks whether a test suite catches changes to its source code. It creates mutations at the abstract syntax tree level, then runs tests to reveal which changes go undetected. The project describes compatibility with Python 3.3 and later. It uses unittest by default, while pytest support is experimental. Reports can be generated in YAML or HTML, and coverage analysis can restrict mutation to code exercised by tests. Users can also select or disable operators and sample a percentage of mutants. MutPy supports higher order mutations and includes standard and experimental operator sets. Installation is documented through pip from PyPI or from the repository source. The software is free at free and licensed under Apache License 2.0. PyPI lists version 0.6.1, released November 17, 2019, as the latest release. The README warns that disabling stdout can damage tests that interact with sys.stdout.