µScript Home Page
First release March 2014
Based on muJava Version 4, June 2013

This page is for µScript, not the GUI interface for µJava.

µScript (muScript) is a command line interface to µJava, which is a mutation system for Java programs. Please see the µJava page for general information about µJava.

µScript is intended for experiments with mutation. The normal GUI for µJava is easy to learn and use, but slow for certain types of experiments. This command line interface (CLI) allows direct access to key functionalies of µJava, and includes abilities to generate mutants, execute mutants, and mark mutants as equivalent. The CLI also supports several options that can be useful during experiments, such as running a random percentage of mutants, running individual mutants, and running tests on mutants that have already been killed by other tests. The commands can be embedded in scripts to support mutant execution in flexible ways. µScript uses the same base execution engine as the GUI, so results are entirely consistent.

As with µJava, µScript is provided on an "as is" basis. Although we welcome any and all feedback, we have no funds and very limited resources to provide support or respond to queries.


I. Installation Files

Although installing µScript is not technically difficult or complicated, it will require a little more effort than installing many commercial packages. µScript can run on Unix, Linux, and Windows platforms. You will need to download and deploy two Java "jar" files and a configuration file.

mujava.jar µJava system library
openjava.jar OpenJava library that is adapted for µJava (OpenJava WWW page)
mujava.config A file to specifies the µJava system home directory

You may also need one or more of three other Java jar files if, for example, you do not have JUnit already installed.

junit.jar JUnit library files
hamcrest-core-1.3.jar Needed for JUnit
commons-io-2.4.jar Needed to move and compile files

The jar files should be placed in a directory on disk that all users who need to use µScript can access, for example, in C:\mujava\.


II. User Manual

We have a user manual in PDF. It refers to a small calendar class as an example. The example includes the cal.java (cal.class) class, and three JUnit test filess: calTest.java (calTest.class), calTest2.java (calTest2.class), and calTest3.java (calTest3.class).

We verified that this example works with µScript and can thus be used to follow the user manual, and to verify that µScript is installed correctly.

Last update: March 2014, Jeff Offutt and Lin Deng