我已閱讀here關於使用Surefire插件進行單元測試以及使用Failsafe插件進行集成測試,但我仍不清楚POM如何在由Maven項目組成的一個父母和多個子模塊,每個模塊都有自己的POM文件。在POM中測試多模塊Maven項目的內容
問題:
- 有沒有人實現的集成測試和單元測試在他們的每一個模塊的?
- 如果是這樣,你會如此善良以顯示你的POM,所以我有一個良好的工作配置的例子?
我已閱讀here關於使用Surefire插件進行單元測試以及使用Failsafe插件進行集成測試,但我仍不清楚POM如何在由Maven項目組成的一個父母和多個子模塊,每個模塊都有自己的POM文件。在POM中測試多模塊Maven項目的內容
問題:
查看我對問題的回答:How can I switch between two test suites in Maven 2? 我更喜歡maven模塊 - 非常容易實現,而且您不需要關於其他插件的知識。
如果您使用testng您可以在父POM只是定義(一個地方只):
<profile>
<id>normal</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludedGroups>integration</excludedGroups>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>integration</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<includedGroups>integration</includedGroups>
</configuration>
</plugin>
</plugins>
</build>
</profile>
標註所有集成測試:
@Test(groups="integration")
如果您使用JUnit看到Category
您運行正常測試:mvn clean install
集成測試mvn -Pintegration clean install
Apache Stanbol項目使用surefire插件進行單元測試和集成測試。它可以成爲你的一個很好的例子。
這裏是鏈接:parent module,integration-tests並擁有自己的單元測試,factstore的Stanbol的組成部分之一。