2015-12-18 45 views
1

例如,我有一個包含2個模塊的maven項目。一個REST服務模塊,一個hornetq jms模塊。如何對maven中的所有模塊進行集成測試?

手動方式將是:

  1. 運行嵌入式碼頭服務器應用
  2. 運行嵌入式HornetQ服務
  3. 發送PUT請求發送到REST服務器(REST服務器作爲HornetQ的生產者推請求消息發送到HornetQ的隊列)
  4. 啓動HornetQ的消費者收到排隊消息

如何使用maven與他們進行集成測試?

回答

2

答案是maven-failsafe-plugin(參見文檔http://maven.apache.org/surefire/maven-failsafe-plugin/usage.html)。它可以讓你

  1. 開始應用在pre-integration-test階段(例如,碼頭或將hornetq)
  2. integration-test階段
  3. 停止執行測試中post-integration-test階段
  4. 評估測試的結果的應用verify階段(例如,構建失敗,生成JUnit報告)

查看提供的鏈接中的示例。

你的具體情況,你將開始在pre-integration-test階段的所有服務器(通過使用hornetq-maven-pluginjetty-maven-plugin並可能maven-antrun-plugin),然後在post-integration-test階段阻止他們。
我推薦使用JUnit或TestNG框架從Java執行PUT請求,因爲它完美地與maven-failsafe-plugin集成。如果可能的話,作爲JUnit/TestNG測試的一部分,以編程方式啓動(並停止)hornetq使用者,因爲結果是assert

其他一些資源:

相關問題