mutator vs MutPy
mutator
pdonatbouillud.comMutPy
github.comSide by side
| Figure | mutator | MutPy |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Linux | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 0 | 1 |
| Spec score · Mutation Testing Tools | 6.9 (#21) | 7.9 (#7) |
| Installation | The released version can be installed from CRAN with install.packages("mutator"), and development versions are available from GitHub and R-universe. | The project README gives pip installation and source installation instructions. |
| Intended users | The maker describes it for developers who want to assess the quality of R package test suites. | PyPI classifies the package for developers and software testing. |
| License | The package is licensed under GPL (>= 3). | The project is licensed under the Apache License, Version 2.0. |
| Mutation method | It uses abstract syntax tree analysis and mutation operators for arithmetic, comparisons, logic, constants, return values, and statement deletion. | It applies mutations at the abstract syntax tree level. |
| Purpose | mutator is an automated mutation testing tool for the R language that checks whether a test suite detects systematic changes to source code. | MutPy is a mutation testing tool for Python source code that evaluates the quality of software tests. |
Plans
In their own words
mutator
mutator has no write-up on Specifiction yet; its figures are above.
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.