Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Mutation Testing Tools
  3. MuJava

MuJava

What it is

MuJava is a free, open-source tool for mutation testing of Java programs. It generates altered versions of individual classes or multi-class packages, then runs JUnit tests against those versions to evaluate mutation coverage. Its object-oriented testing includes 24 class-level operators, alongside method-level operators. Tests need to be public JUnit test classes and methods containing calls to the classes under test; JUnit test suites are not supported. Equivalent mutants require manual identification, and the documentation estimates they make up 5% to 20% of generated mutants. Version 4 supports Java 1.6 features such as generics, annotations, enumerations, varargs, enhanced for-each loops, and static imports. Setup involves two JAR files, a configuration file, and Java CLASSPATH and PATH settings. The documented workflow uses Java GUI applications, and a command-line interface called muScript was released in March 2014. MuJava is available for Linux, macOS, and Windows and is provided as-is under the Apache license.

For and against

For

  • Free and open source under Apache license
  • Generates class-level and method-level mutants
  • Evaluates mutation coverage with JUnit tests
  • Supports Linux, macOS, and Windows

Against

  • JUnit test suites are not supported
  • Equivalent mutants need manual identification
  • Setup requires Java path configuration
  • Maintainers provide it as-is

The verdict

MuJava offers Java mutation testing with class-level and method-level operators, plus JUnit-based coverage evaluation. Its manual equivalent-mutant review and setup requirements are important considerations.

Who it suits

MuJava suits students and researchers working on Java mutation testing with JUnit. It can test individual classes or packages containing multiple classes.

Plans and prices

µJava

Free

Open source under Apache license · provided as-is

Every plan, in full

On the record

CLI
A command-line interface called muScript was released in March 2014.albany.edu · read 8 Oct 2026
Command line
A command line interface called muScript was released in March 2014.albany.edu · read 8 Oct 2026
Coverage
After generating mutants, µJava runs tests and evaluates their mutation coverage.albany.edu · read 8 Oct 2026
Eclipse
The maker page says an Eclipse plugin version was created by Laurie Williams and Ben Smith of NC State in 2007.albany.edu · read 8 Oct 2026
Equivalent mutants
Equivalent mutants must be identified by hand, and the documentation says 5% to 20% of mutants are typically equivalent.albany.edu · read 8 Oct 2026
Installation
The documented setup uses two JAR files and a configuration file, and requires configuring Java CLASSPATH and PATH.albany.edu · read 8 Oct 2026
Intended users
The maker describes MuJava as a service to the community and says it has been used by students and researchers.albany.edu · read 8 Oct 2026
Interface
The documented workflow uses Java GUI applications to generate and run mutants.albany.edu · read 8 Oct 2026
Java compatibility
Version 4 supports JUnit tests and Java 1.6 language features, including generics, annotations, enumerations, varargs, enhanced for-each loops, and static imports.albany.edu · read 8 Oct 2026
Language support
Version 4 supports Java 1.6 language features including generics, annotations, enumerations, varargs, enhanced for-each loops, and static imports.albany.edu · read 8 Oct 2026
License
The project was released as open source under the Apache license in April 2015.albany.edu · read 8 Oct 2026
Mutation operators
It creates object-oriented mutants using 24 class-level operators and also supports method-level operators.albany.edu · read 8 Oct 2026
Purpose
MuJava automatically generates mutants for Java programs for traditional method-level and class-level mutation testing.albany.edu · read 8 Oct 2026
Support
The maintainers offer MuJava as-is and do not guarantee question answering, fault fixing, or improvements.albany.edu · read 8 Oct 2026
Test evaluation
MuJava runs tests against generated mutants and evaluates mutation coverage.albany.edu · read 8 Oct 2026
Test framework
Tests are provided as JUnit test classes containing methods that call the class under test; JUnit test suites are not supported.albany.edu · read 8 Oct 2026
Test integration
Tests are written as JUnit test cases containing sequences of method calls to the classes under test.albany.edu · read 8 Oct 2026
Test limitation
JUnit test suites are not supported; test sets must be JUnit test cases with public test classes and methods.albany.edu · read 8 Oct 2026

Alternatives to MuJava

Every alternative, ranked