Gambit vs MuJava
Gambit
certora.comMuJava
albany.eduSide by side
| Figure | Gambit | MuJava |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Plans published | 0 | 1 |
| Spec score · Mutation Testing Tools | 7.8 (#8) | 8.4 (#3) |
| Command line | Gambit provides `mutate` to generate mutants and `summary` to summarize generated mutants. | A command line interface called muScript was released in March 2014. |
| Installation | Prebuilt binaries are available for Linux x86-64 and Mac; Windows and Linux ARM users must build from source. | The documented setup uses two JAR files and a configuration file, and requires configuring Java CLASSPATH and PATH. |
| Intended users | The maker describes Gambit as usable on any Solidity project. | The maker describes MuJava as a service to the community and says it has been used by students and researchers. |
| License | The Gambit GitHub repository identifies its license as MIT. | The project was released as open source under the Apache license in April 2015. |
| Platforms | Prebuilt binaries are available for Linux x86-64 and Mac; Windows and Linux ARM users must build from source. | The download instructions say MuJava can run on Unix, Linux, and Windows, and provide Mac setup instructions. |
| Purpose | Gambit is an open source Solidity mutation testing tool that evaluates and strengthens a testing suite. | MuJava automatically generates mutants for Java programs for traditional method-level and class-level mutation testing. |
| Support | Certora's documentation says product questions can be directed to its Help Desk channel on Discord. | The maintainers offer MuJava as-is and do not guarantee question answering, fault fixing, or improvements. |
Plans
In their own words
Gambit
Gambit is a free, open-source mutation testing tool for Solidity projects. It generates altered contract versions, called mutants, to measure whether a test suite or formal verification specification detects faults. Gambit locates mutation points by traversing a program’s abstract syntax tree and applying predefined syntax transformations. A declarative configuration language lets users tailor mutations to specific parts of a program. Results can be viewed in a dashboard that summarizes mutant verification and calculates a specification score. Gambit can work with the Certora Prover to evaluate formal specifications; that workflow generates mutants and submits a verification job for each to Certora’s server. The command line includes `mutate` for generating mutants and `summary` for presenting them. A compatible `solc` binary is required for the project being mutated. Gambit supports Solidity and is listed for Linux, macOS, and Windows, though prebuilt binaries are available for Linux x86-64 and Mac; Windows and Linux ARM users must build from source. Function-call and swap-arguments-function mutation operators are disabled. The repository identifies the license as MIT. Certora directs product questions to its Help Desk channel on Discord.
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.