Skip to content
SPECIFICTION
Get listed

LittleDarwin vs MuJava

LittleDarwin

aliparsai.github.io

MuJava

albany.edu

Side by side

FigureLittleDarwinMuJava
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Windows—Yes
macOS—Yes
LinuxYesYes
Plans published11
Spec score · Mutation Testing Tools8.3 (#4)8.4 (#3)
InstallationThe documentation says to install LittleDarwin with pip and run it as a Python module.The documented setup uses two JAR files and a configuration file, and requires configuring Java CLASSPATH and PATH.
LicenseThe project is free software under the GNU General Public License, version 3 or later.The project was released as open source under the Apache license in April 2015.
Mutation operatorsThe command-line options include null-check and method-level mutation operators, as well as an option to use all operators.It creates object-oriented mutants using 24 class-level operators and also supports method-level operators.
PurposeLittleDarwin generates mutants of Java source code and runs a build command to check whether the test suite detects them.MuJava automatically generates mutants for Java programs for traditional method-level and class-level mutation testing.
SupportThe maker invites users to email the author with feedback or suggestions.The maintainers offer MuJava as-is and do not guarantee question answering, fault fixing, or improvements.

Plans

LittleDarwin

  • Free and open-sourceFree

LittleDarwin pricing →

MuJava

  • µJavaFree

MuJava 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

MuJava

MuJava is a free, open-source tool for mutation testing of Java programs. It generates mutants for individual classes and packages, using 24 class-level operators as well as method-level operators, then runs tests against those mutants and evaluates mutation coverage. Tests must be JUnit test cases with public test classes and methods that call the classes under test; JUnit test suites are not supported. Equivalent mutants require manual identification, and the documentation says they typically make up 5% to 20% of mutants. Version 4 supports Java 1.6 language features, including generics, annotations, enumerations, varargs, enhanced for-each loops and static imports. Setup uses two JAR files and a configuration file, with Java CLASSPATH and PATH configuration. The documented workflow uses Java GUI applications; a command-line interface called muScript was released in March 2014, and an Eclipse plugin was created in 2007. The project is provided as-is, without guarantees of answers, repairs or improvements. It is available for Linux, macOS and Windows.

Visit albany.edu