Skip to content

Features

Boh Cheng Hin edited this page Oct 12, 2022 · 1 revision

Maven and Gradle Support

The mutation framework can look for pom.xml and gradle directories and automatically determine the build tool. It parses the files to obtain information needed for running the mutation framework e.g. source, test and byte-code folders, project names, etc.

Set Maximum Number of Mutations

The user can set the maximum number of mutations the framework is allowed to inject. By default, it is unlimited.

Set Seed for Randomness

For reproducibility, the user can set a seed for the randomness involved in the mutation framework. This makes debugging this project and reproducing experimentation results much easier.

Auto-seeding

When turned on, the project will attempt to mutate the test case until it fails. To lower the overhead, it checks for failure of the test case during MicroBat's Precheck, then re-attempts with a different seed. The user can specify the first and last seed, and the project will attempt all seeds between them, until the test case fails.

Toggle Strong Mutations

Some mutations are under the "strong" category as they can break data dependencies. When turned on, the project will attempt to mutate with only the weak operators. If it passes, it re-attempts with the strong mutations included.