2017-08-01 140 views
0

我們得到了以下情況:我們有單元和集成測試。單元測試類以Test結束,集成測試以ITest結束。在Maven的執行只有單元測試構建我們使用以下配置:在Maven中配置Eclipse遵循maven-surefire-plugin配置

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>${maven-surefire-plugin.version}</version> 
    <configuration> 
     <excludes> 
      <exclude>**/*ITest.java</exclude> 
     </excludes> 
    </configuration> 
</plugin> 

這是工作在Maven構建,但是當我通過上下文菜單執行測試在Eclipse IDE>運行爲>JUnit測試它忽略這些排除和測試ITest最後失敗。

有沒有一種方法可以配置(在POM中)Eclipse遵循maven-surefire-plugin配置?

+2

'Run as> JUnit test'忽略整個pom。 Eclipse有自己的配置 – Jens

+0

爲什麼你不遵循已經在Maven中定義的默認命名模式。單元測試:'* Test.java'集成測試:'IT.java *'? – khmarbaise

+0

@khmarbaise這當然是我最喜歡的解決方案,但這不是我的決定,這是一個公司政策:/ – Alex

回答

1

運行方式> JUnit測試知道你pom.xml

但是,如果你把你的單元測試,並在不同的目錄集成測試(在Maven convention建議src/test/javasrc/it/java),那麼你可以使用Eclipse的運行在一個包或源文件夾的所有測試的能力;只需單擊集成測試源文件夾,然後從其上下文菜單中選擇作爲> JUnit測試運行。

+0

這是一個很好的解決方案,但它是很多測試,並不是所有的測試都在我的控制之下。這就是爲什麼我需要通過配置的方式 – Alex