[英]How to run junit suite in parallel using maven surefire plugin
我有一个测试套件说 JunitTest1 和 JunitTest2 如下,
@RunWith(Suite.class)
@SuiteClasses({
com.sample.test1.class,
com.sample.test2.class,
com.sample.test3.class,
})
public class JunitTest1 {
}
@RunWith(Suite.class)
@SuiteClasses({
com.sample.xxx1.class,
com.sample.xxx2.class,
com.sample.xxx3.class,
})
public class JunitTest2 {
}
我想并行运行两个测试套件,但测试套件内的测试类应按指定顺序运行。 我在 maven pom.xml 中添加了以下插件,
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<parallel>suites</parallel>
<threadCount>2</threadCount>
<!-- <forkCount>1</forkCount>
<reuseForks>true</reuseForks> -->
</configuration>
</plugin>
我已经按照这个链接 - http://maven.apache.org/surefire/maven-surefire-plugin/examples/junit.html
我已经尝试了所有可能的并行标记组合,如方法、类、两者、套件、套件和类、套件和方法、类和方法,但似乎没有任何方法可以解决我的问题。 如果我使用套件,测试套件仍按顺序运行,而对于其他选项,测试套件中的测试类以随机顺序运行
有什么我做错了吗? 任何人都可以指导我解决这个问题吗?
junit 测试应该相互独立。 junit 不提供排序测试的方法,以防止您编写依赖于其他测试的测试。
关于此主题还有其他 SO 主题:
和
http://stackoverflow.com/questions/3693626/how-to-run-test-methods-in-specific-order-in-junit4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.