2015-02-24 69 views
0

我在pom.xml以下配置:故障安全插件:僅運行在命令行中選定的測試

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-failsafe-plugin</artifactId> 
     <version>2.18.1</version> 
     <configuration> 
      <includes> 
       <include>**/TestA.java</include> 
       <include>%regex[.*TestB.*]</include> 
      </includes> 
     </configuration> 
     <executions> 
      <execution> 
       <id>integration-test</id> 
       <goals> 
        <goal>integration-test</goal> 
        <goal>verify</goal> 
       </goals> 
      </execution> 
     </executions> 
    </plugin> 

我要的是通過種皮和case100的命令行方式case0和案例1運行, TestB的case101。 TestA和TestB都有更多我想忽略的方法。 我可以萬無一失,插件輕鬆地做到這一點:

mvn test -Dtest=org.TestA#case0+case1,org.TestB#case100+case101 

,但我不能做使用故障保護,插件一樣。 它是否可行?

我使用:JUnit 4.11和failsafe/surefire 2.18.1。

在此先感謝!

+0

[文檔](http://maven.apache.org/surefire/maven-failsafe-plugin/integration-test-mojo.html#test)似乎暗示應該工作... – 2015-02-24 14:35:18

+0

它真的工作在這些情況下,它們描述了:用逗號(所有方法)分隔的一個或多個類,或者單個類中的一個/幾個方法(並且沒有指定其他類)。可能會使用通配符,儘管我沒有嘗試。但是,我的情況是不同的,如果支持,我不能找到任何提及。我的理解是它不會在默認配置下運行。但它有很多選項來配置... – user3155208 2015-02-24 14:55:17

回答

0

請嘗試使用「-Dit.test = MyTestClass#myMethod」,因爲它通常用於按照記錄運行集成測試。請注意,它可以與junit-4.x或TestNG框架一起使用。

不知道如何讓它與逗號分隔值雖然工作。

相關問題