PaxExam注释的Junit测试类的并行执行

时间:2018-07-31 08:05:04

标签: junit4 maven-surefire-plugin pax-exam pax pax-runner

此查询为w.r.t. PaxExam注释的Junit测试类的并行执行。

正在使用的库:

  1. Junit 4.12
  2. Pax考试4.9.1
  3. Maven Surefire插件2.18.1

以下是Maven Surefire插件配置:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <configuration>
        <parallel>suites</parallel>
        <useUnlimitedThreads>true</useUnlimitedThreads>
        <perCoreThreadCount>true</perCoreThreadCount>
        <threadCountSuites>0</threadCountSuites>
        <threadCount>0</threadCount>
        <parallelOptimized>true</parallelOptimized>
        <runorder>filesystem</runorder>
        <includes>
            <include>**/Suite1.java</include>
            <include>**/Suite2.java</include>
        </includes>
    </configuration>
</plugin>

有2个Junit套件Suite1.javaSuite2.java

上面的每个套件都包含2个测试类,每个类都用@RunWith(PaxExam.class)@ExamReactorStrategy(PerSuite.class)注释

此外,每个测试类都有一个用@Test注释的方法。

执行mvn clean test时,套件不会并行运行。

进一步深入探讨了Pax ReactorManager将所有4个测试类添加到一个Set下,即ReactorManager对待一个套件中的所有测试类。另外,在maven日志中,语句suite finished仅记录一次。

有人建议如何在PAX考试中并行运行Junit套件吗?

0 个答案:

没有答案