go-mutesting vs MuJava
go-mutesting
github.comMuJava
albany.eduSide by side
| Figure | go-mutesting | MuJava |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| Self-hosted | Yes | — |
| Plans published | 1 | 1 |
| Spec score · Mutation Testing Tools | 8.0 (#6) | 8.4 (#3) |
| License | The repository identifies the project as MIT licensed. | The project was released as open source under the Apache license in April 2015. |
| Purpose | go-mutesting performs mutation testing on Go source code to find code that is not covered by tests. | MuJava automatically generates mutants for Java programs for traditional method-level and class-level mutation testing. |
| Support | The README invites users to make feature requests and report bugs or problems. | The maintainers offer MuJava as-is and do not guarantee question answering, fault fixing, or improvements. |
Plans
In their own words
go-mutesting
go-mutesting is a framework for mutation testing Go code to identify parts of a program that tests may not cover. It changes source code in controlled ways, runs tests, and reports whether each mutation is killed or survives; surviving mutations are accompanied by a source patch. Its mutation score reflects the share of generated mutations killed by the test suite. Targets may be Go files, directories, or packages, including recursive `...` patterns, while `_test` files are excluded. By default, it replaces the original file with a mutation and runs that package’s tests. Alternatively, an external command can test each mutation, with environment variables describing the change and exit codes indicating the result. Built-in mutators cover branches, comparisons, boolean expressions, statement removal, and Cosmos SDK arithmetic and comparisons. Custom mutators can be registered through the Mutator interface. The MIT-licensed tool is free and runs on Linux or in self-hosted environments. Its README positions mutation testing as a supplement to automatic test suites and cautions that false positives can occur.
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.