Maven Skipping Tests
In this quick article, we will look into different ways to skip tests in maven applications.
Join the DZone community and get the full member experience.
Join For FreeSometimes, we need to disable JUnit test cases written in Maven projects. When we build a Maven package, by default, Maven will execute the JUnit test cases.
Skipping Tests
If you are using Maven-surefire-plugin in your pom.xml, then it's easy to skip running the tests for a particular project and set the skipTests
property to true.
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
From the Command Line
You can also skip the tests via the command line by executing the following command:
mvn install -DskipTests
If you absolutely must, you can also use the maven.test.skip property to skip compiling the tests. maven.test.skip is honored by Surefire, Failsafe, and the Compiler Plugin.
mvn install -Dmaven.test.skip=true
Skipping by Default
If you want to skip tests by default, but also want the ability to re-enable tests from the command line, you need to go via a properties section in the pom:
<project>
[...]
<properties>
<skipTests>true</skipTests>
</properties>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<skipTests>${skipTests}</skipTests>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
This will allow you to run with tests disabled by default and to run them with this command:
mvn install -DskipTests=false
The same can be done with the "skip" parameter and other booleans on the plugin.
You can learn maven in-depth here. Happy coding !!
Published at DZone with permission of Ramesh Fadatare. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments