Infection vs MutPy
Infection
infection.github.ioMutPy
github.comSide by side
| Figure | Infection | MutPy |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | — |
| macOS | Yes | — |
| Linux | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 0 | 1 |
| Spec score · Mutation Testing Tools | 7.6 (#11) | 7.9 (#7) |
| Installation | The maker documents PHAR, Phive, Composer, Git, and Homebrew installation methods. | The project README gives pip installation and source installation instructions. |
| License | The project is released under the BSD-3-Clause License. | The project is licensed under the Apache License, Version 2.0. |
| Purpose | Infection mutates PHP source code and reports changes that a test suite fails to catch. | MutPy is a mutation testing tool for Python source code that evaluates the quality of software tests. |
Plans
In their own words
Infection
Infection is a PHP mutation-testing library that shows which changes a test suite fails to detect. It creates mutants using predefined operators, runs tests against changed code, and records killed and escaped mutants, errors, and timeouts. Its Mutation Score Indicator measures the share of generated mutations detected by tests; it also reports Mutation Code Coverage and Covered Code Mutation Score Indicator. Infection supports PHPUnit, PhpSpec, Codeception, and Testo, and runs from the command line at a project root. Teams can run mutated tests in parallel, focus analysis on touched lines or files, and set minimum mutation-score thresholds that fail a build. The homepage describes more than 100 mutators grouped into profiles and allows custom mutators. Optional PHPStan and Mago integrations can help catch escaped mutants involving type violations, dead code, and unreachable paths. Installation options include PHAR, Phive, Composer, Git, and Homebrew. A browser playground supports trying PHP code and tests without installing the tools. Infection is free under the BSD-3-Clause license and requires PHP 8.3 or newer plus Xdebug, phpdbg, or pcov.
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.