[英]How do I run separate tests?
如何在特定模塊中運行帶有測試的單獨文件夾?
我的模塊:
<modules>
<module>common</module>
<module>foo</module>
<module>bar</module>
</modules>
每個模塊都有一個2-3個測試文件夾。 我需要在模塊欄中運行測試文件夾“ utils”。
我為團隊“ MVN測試”做了限制:
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/utils/**</exclude>
</excludes>
</configuration>
<executions>
<execution>
<id>surefire-itest</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<excludes>
<exclude>none</exclude>
</excludes>
<includes>
<include>**/utils/**</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
mvn test-運行除“ utils”以外的所有測試。 mvn integration-test-運行所有測試。
現在,我只需要啟動“ utils”。 我該如何解決這個問題?
選項1是使用各種配置文件通過mvn test
運行不同的surefire執行(以及不同的包含和排除)。
選項二是將故障安全插件與mvn verify
一起使用。 這使得僅運行單元測試或單元測試和集成測試變得容易。 僅運行集成測試是可行的,但是很尷尬。
不要將surefire插件與mvn integration-test
。 通常最好不要使用mvn integration-test
。 有關原因,請參見Maven生命周期簡介 。
為utils中的測試創建另一個,並將其綁定到您要在其中運行的階段。
如果您使用的是JUnit,也可以使用類別對測試進行分組。
我找到了解決此問題的方法:
mvn測試-運行除“ utils”以外的所有測試mvn測試-P utilsTest-僅運行測試“ utils”
<profiles>
<profile>
<id>utilsTest</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<exclude>none</exclude>
<includes>
<include>**/utils/**</include>
</includes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>test</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/utils/**</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.