2014-05-22 43 views
2

我使用JBoss和WildFly Maven插件來部署我的應用程序。如何在部署之後推遲Maven測試目標?

<plugins> 
    <plugin> 
     <groupId>org.wildfly.plugins</groupId> 
     <artifactId>wildfly-maven-plugin</artifactId> 
     <version>1.0.0.Beta1</version> 
    </plugin> 
</plugins> 

,我發現的問題是,如果我有一些JUnit測試在我的項目,他們正在執行的應用程序部署以前,導致試驗與應用不一致的狀態。在測試階段之前是否可以配置這個插件來啓動?
謝謝

+0

爲什麼會導致應用程序狀態不一致?運行測試應該獨立於部署應用程序。有些東西聽起來很腥,你的設置:-)另外,在部署之前運行測試*通常是最佳做法。 – jpkrohling

回答

1

此插件默認與package階段一起執行,您的應用程序打包前可能會嘗試運行該插件。作爲替代方案,您可以覆蓋maven-surefire插件以在稍後的階段運行測試,例如integration-test,這將在應用程序打包後執行。

1

一個實際的例子可以在Maven tutorial上找到,它展示瞭如何包含故障安全插件並將其綁定到集成測試和驗證階段的執行。通過這種方式,被設計爲集成測試(例如以* IT結尾)的測試將僅在集成測試階段執行。