2014-07-03 44 views
0

我想將我的黃瓜測試(.feature文件)保存在單獨的jar項目中(僅作爲測試jar包裝)並將此jar聲明爲另一個依賴項項目在那裏運行。Maven在一個模塊中的黃瓜測試代碼和在另一個模塊中的測試執行

是測試罐項目(產生A-0.1-tests.jar
被聲明作爲測試依賴

若本工作項目?它不會爲我的任何測試運行。只是忽略了測試的目標。

這裏是一個POM片段:

創建罐這樣的:

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     <executions> 
      <execution> 
       <goals> 
        <goal>test-jar</goal> 
       </goals> 
       <configuration> 
        <classifier>tests</classifier> 
       </configuration> 
      </execution> 
     </executions> 
    </plugin> 

呼叫此罐這樣的:

<dependency> 
     <groupId>com.group</groupId> 
     <artifactId>A</artifactId> 
     <classifier>tests</classifier> 
    </dependency> 

我錯過了東西...有人嗎?

+0

第一個問題您爲什麼想將單元測試與相關生產環境中的模塊分開?你有這個特別的理由嗎? – khmarbaise

+0

我已更新我的問題。我指的是黃瓜測試。 –

回答

0

你的測試不存在於你的主模塊中,所以maven不會運行它們,即使依賴於測試(這意味着你的主代碼需要測試才能執行,這是錯誤的無論如何)。

你根本不需要那樣做。如果你遵循maven中記錄的標準代碼結構,你會發現一切都更容易 - 包括創建你的測試代碼jar。你應該將主代碼和測試代碼放在一個模塊中 - 這對整個行業的其他人都適用,你不需要自己創造任何新東西,如果你只是隨它而行,你會沒事的。

您可以使用mvn jar插件mvn jar:test-jar創建一個包含您的測試的jar,與模塊中的其他類分開,而不需要在單獨的模塊中進行測試。 Here is a document describing this

+0

我已更新我的問題。我指的是黃瓜測試。 –

相關問題