我期待通過使用類像這樣運行在Maven和他們組集成的一些測試:使用Maven配有安全插件來運行測試分類
接口:
package com.path.for.testing;
public interface SlowTests {
}
測試類:
import com.path.for.testing.SlowTests
@Category(SlowTests.class)
public class SlowTest {
...
}
POM文件:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
...
<profiles>
...
<profile>
<id>functional-test-slow-tests</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<groups>com.path.for.testing.SlowTests</groups>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>
我運行它:mvn乾淨安裝-P功能測試慢測試
我的問題是,當它運行它似乎循環所有測試,而不僅僅是指定的。分類不適用於集成測試嗎?或者我做錯了什麼?我會按照要求更新信息。對這個問題的任何幫助或方向都非常感謝,我是新手,很可能我錯過了一些顯而易見的事情。謝謝。
編輯迴應User944849:
當與-X參數運行,我認爲故障安全插件獲取執行多次。我還添加了您建議的新執行ID。這是我所得到的,當項目建成:
[DEBUG] -----------------------------------------------------------------------
[DEBUG] Goal: org.apache.maven.plugins:maven-failsafe-plugin:2.12:integration-test (default-integration-tests)
[DEBUG] Style: Regular
[DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?>
...
[DEBUG] -----------------------------------------------------------------------
[DEBUG] Goal: org.apache.maven.plugins:maven-failsafe-plugin:2.12:verify (default-integration-tests)
[DEBUG] Style: Regular
[DEBUG] Configuration: <?xml version="1.0" encoding="UTF-8"?>
測試使用的是您提出的新的ID,但我還是我得到相同的結果,即不需要測試仍在運行。
您是否檢查過配置JUnit 4.7+?或者你使用TestNG? – khmarbaise