STARTS is a tool for static class-level regression test selection tool for Maven-based Java programs.
- Java 1.8 and above
- Maven 3.2.5 and above
- Maven Surefire 2.14 and above
- Operating System: Linux or OSX
Change the pom.xml to add the configuration for the STARTS plugin:
<build>
<plugins>
<plugin>
<groupId>edu.illinois</groupId>
<artifactId>starts-maven-plugin</artifactId>
<version>1.3</version>
</plugin>
</plugins>
</build>git clone https://github.com/TestingResearchIllinois/startscd startsmvn install
- To see all the goals that STARTS provides, run
mvn starts:help - To see the details for any of the goals, run
mvn starts:help -Ddetail=true -Dgoal=<goal>; replace<goal>with the goal of interest.
-
To see the types that changed since the last time STARTS was run:
mvn starts:diff -
To see the types that may be impacted by changes since the last time STARTS was run:
mvn starts:impacted -
To see the tests that are affected by the most recent changes:
mvn starts:select -
To perform RTS using STARTS (i.e., select tests and run the selected tests):
mvn starts:starts -
To remove all artifacts that STARTS stores between versions (i.e. in the
.startsdirectories):mvn starts:clean
NOTE: By default, commands (1) - (3) will not update the
checksums of files in the latest version, while the command in (4)
will update the checksums of the files. Each command has a
update**Checksums option that can be used to change the default
behavior. For example, to update the checksums while checking the
diff, run mvn starts:diff -DupdateDiffChecksums=true.