This is a maven extension to make it "easy" to integrate off-the-shelf regression testing tools in maven projects for the purpose of running evaluations.
mvn install
at the top level, then copy maven-extension/target/kp-maven-extension-1.0-SNAPSHOT.jar
to your $MAVEN_DIRECTORY/lib/ext
directory. This will make KebabPizza active on every maven run! You might find it makes the most sense to make a new copy of maven and install KP in that other maven... then when you want KP to run, use that other maven.
These environmental variables can be used regardless of the other tooling applied. For boolean variables, setting the variable to any value will set it to be true.
KP_FORK_PER_TEST
Run each test in a fresh JVM (forkMode=perTest)KP_RECORD_TESTS
Record test results to Firebase/MySQLKP_FAIL_ON_FAILED_TEST
Break the build when a test fails (otherwise we make sure that it never breaks)KP_ARGLINE
Additional flags to pass on the argument line when tests runKP_DEPENDENCIES
Comma-separated additional dependencies to include for the test listener when it runs, in the formatgroup:artifact:version
KP_JACOCO_OUTPUT_FILE=<outputFile> KP_JACOCO=true ../../apache-maven-3.5.4/bin/mvn verify
KP_PIT=true ../../apache-maven-3.5.4/bin/mvn verify
We will automatically mutate ALL files in target/classes of all modules We let Pit decide which tests to run though We turn off surefire/failsafe and make sure tests get compiled, pre-test modules run, etc. Can also do -Dverbose=true to get Pit's verbose logging