當我運行maven clean install
它總是執行所有測試src/test/java
有沒有辦法跳過所有的測試,只是沒有任何測試運行簡單的版本。排除在Maven的測試建立
我想我的測試是在src/test/java
,但我想告訴Maven來不執行這些命令。我一直在網上尋找類似的東西,但我沒有找到答案。
有沒有辦法做到這一點?
當我運行maven clean install
它總是執行所有測試src/test/java
有沒有辦法跳過所有的測試,只是沒有任何測試運行簡單的版本。排除在Maven的測試建立
我想我的測試是在src/test/java
,但我想告訴Maven來不執行這些命令。我一直在網上尋找類似的東西,但我沒有找到答案。
有沒有辦法做到這一點?
使用本
MVN全新安裝-DskipTests
從http://maven.apache.org/plugins/maven-surefire-plugin/examples/skipping-test.html:
<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
當我的測試運行時,我最喜歡管理的方式是創建一個名爲skip-tests
的Maven變量,默認爲true
。然後你可以使用這個變量,像這樣:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.2</version>
<configuration>
<skipTests>${skip-tests}</skipTests>
</configuration>
</plugin>
這種方式,你可以通過在變量在構建時,-Dskip-tests=false
,當你不希望它們運行。當你集成了和單元測試,並且想用一個變量運行或禁用兩組測試時,這是非常有用的。
我認爲最簡單的將是這樣:mvn clean package -Dmaven.skip.tests=true
我覺得這個方法使用,因爲它不會讓你改變你的POM,所以不必更改項目。
這是-Dmaven.test.skip = true –
這會跳過編譯測試,請參閱http://maven.apache.org/surefire/maven-surefire-plugin/examples/skipping-test.html –
我們使用神火單元測試,並Failsafe集成測試。
跳過所有測試:
mvn clean package -DskipTests
要跳過只是無故障測試:
mvn clean package -DskipIT
要跳過只是神火,你需要顯式調用故障安全插件的集成測試目標,經過編寫當然的測試課程:
mvn clean test-compile failsafe:integration-test
這很好地工作。謝謝:) –
不客氣:) – jelies