In this article, we will learn and understand how to skip unit test while building maven based project using surefire plugin
One of the maven’s features is to run unit test automatically and if some of the test cases fail, then maven build fails
Irrespective of the unit test failure, we still need to move on to build the project successfully. In these circumstances, we have to suppress maven from running unit test for us which results in “BUILD FAILURE”
Skip unit test using surefire plugin
If we need to suppress/disable running unit test for a particular project, configure “skipTests” tag to true of surefire plugin in pom.xml
pom.xml
<project> [...] <properties> <skipTests>true</skipTests> </properties> [...] <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18</version> <configuration> <skipTests>${skipTests}</skipTests> </configuration> </plugin> </plugins> </build> [...] </project>
Skipping unit test from command line
You can skip unit test running below maven command
mvn install -DskipTests
Or
mvn install -Dmaven.test.skip=true
To be noted
With above pom.xml configuration, by-default maven suppresses or disable running unit test
But to re-enable them, use below maven command from CLI
mvn install -DskipTests=false
References
http://maven.apache.org/surefire/maven-surefire-plugin/examples/skipping-test.html
http://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html
http://maven.apache.org/general.html#skip-test
Read Also:
- Apache Maven tutorials
- Eclipse + Maven tutorials
- Apache Maven: Installing custom library into local repository
- Apache Maven: Transitive dependencies explanation
- Apache Maven: Exclusion of Transitive dependencies
- Apache Maven: Dependency Scopes
- Apache Maven: offline execution
Happy Coding !!
Happy Learning !!