Skip to content
SPECIFICTION
Get listed

LittleDarwin vs MutPy

LittleDarwin

aliparsai.github.io

MutPy

github.com

Side by side

FigureLittleDarwinMutPy
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
LinuxYesYes
Self-hosted—Yes
Plans published11
Spec score · Mutation Testing Tools8.3 (#4)7.9 (#7)
InstallationThe documentation says to install LittleDarwin with pip and run it as a Python module.The project README gives pip installation and source installation instructions.
LicenseThe project is free software under the GNU General Public License, version 3 or later.The project is licensed under the Apache License, Version 2.0.
Mutation optionsThe command line supports higher order, null check, method level, and all mutation operators, as well as whitelist and blacklist filters.It supports higher order mutations and code coverage analysis, including an option to mutate only covered code.
PurposeLittleDarwin generates mutants of Java source code and runs a build command to check whether the test suite detects them.MutPy is a mutation testing tool for Python source code that evaluates the quality of software tests.
ReportsA full analysis generates a report in the `LittleDarwinResults` directory.MutPy can generate YAML and HTML reports and colorful console output.

Plans

LittleDarwin

  • Free and open-sourceFree

LittleDarwin pricing →

MutPy

  • MutPyFree

MutPy pricing →

In their own words

LittleDarwin

LittleDarwin is a Java mutation testing framework written in Python, available for Linux. It generates altered versions, or mutants, of Java source code, then runs a configured build command for each mutant to check whether the test suite detects the change. Its analysis has a mutation phase and a build phase, where each build is checked for success or failure. Users can select null-check or method-level mutation operators, or use all operators. The --higher-order option sets the mutation order, and the guide demonstrates second-order mutants. Project settings include a test project path and test command, build command, working directory, initial build command, cleanup commands, and build timeout. A Maven example runs `mvn clean test` for each mutant. Whitelist filters restrict analysis to selected packages or files, while blacklist filters exclude them. Generated mutants and full-analysis reports go into a LittleDarwinResults directory, and surviving mutants are reported. Installation uses pip, followed by running LittleDarwin as a Python module. The project is free under the GNU General Public License version 3 or later and is supported through donations.

Visit aliparsai.github.io

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.

Visit github.com