Maven:从多个类运行所有测试+从另一个类运行一个测试

时间:2014-01-08 09:03:36

标签: java maven selenium junit automation

我有一堆在其中有多个测试的类。是否可以从3个类中运行所有测试,然后从另一个类中运行一个或两个测试?

我认为这样的事情会起作用,但我不能让它运行:

mvn -Dtest=WTest,XTest,YTest,ZTest#thisTest test

我想在W,X和YTest类中运行所有测试,并且只在ZTest类中测试名为thisTest的测试。

1 个答案:

答案 0 :(得分:1)

我不确定这实际上是否受到支持。花了最后半小时左右查看JUnit4Provider的源代码,似乎surefire将以'全班模式'(当您指定测试类的名称)或'单独方法模式'(当您在测试类中指定方法的名称),但不能同时组合两者。

但是,我确实找到了解决方法。你应该能够做到这一点:

mvn -Dtest=xxx.xxx.WTest#*Test,xxx.xxx.xxx.XTest#*Test,xxx.xxx.xxx.YTest#*Test,xxx.xxx.xxx.ZTest#thisTest test

基本上,您使用*Test通配符以'个别方法模式'运行测试,以指定WTestXTestYTest中的所有测试方法 - 惠斯特只在thisTest中运行ZTest。这显然假设测试类中方法的名称以Test

结尾

请注意,为了实现这一点,我必须使用完全限定的类名(这是xxx.xxx.xxx应该显示的名称)。