当前位置: 首页 > 面试题库 >

Java在Maven构建中并行运行junit测试?

王英奕
2023-03-14
问题内容

我正在使用JUnit 4.4和Maven,并且有大量的长时间运行的集成测试。

关于并行化测试套件,有一些解决方案可以让我在单个测试类中并行运行每个测试方法。但是所有这些都要求我以一种或另一种方式更改测试。

我真的认为,在X线程中并行运行X个不同的测试类将是一种更干净的解决方案。我有成百上千的测试,所以我真的不在乎线程测试类。


问题答案:

使用Maven插件:

<build>
    <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.7.1</version>
        <configuration>
            <parallel>classes</parallel>
            <threadCount>5</threadCount>
        </configuration>
    </plugin>
    </plugins>
</build>


 类似资料:
  • 它是可以配置surefire插件只运行一些测试并行和其他顺序? 也可以使用surefireforkCount来运行声明为jUnit Suite的并行测试吗?

  • 问题内容: 我有大量的测试,大约需要半小时才能运行,并且希望能够并行进行测试。 有没有办法用IntelliJ IDEA 9做到这一点? 问题答案: IDEA仅从版本10开始才了解并行JUnit测试。 有一个跟踪器问题,您可以投票并等待进度:http: //youtrack.jetbrains.net/issue/IDEA-47103 我们计划将其添加到IDEA 10中,但是优先级将取决于票数。

  • 下面是我的pom.xml: 值得注意的是,当类在Intellij IDEA14中运行时,测试会跳过,而且在mvn测试中失败的测试还有一些其他问题,这些问题在Intellij中通过(但超出了本问题的范围)。谢谢你的帮助!

  • 问题内容: 我有一个大型的Maven项目,其中包含多个模块。当我想从一个模块运行JUnit测试时,我在包含所有模块的目录中运行“ mvn -Dtest = NameOfTest测试”。当我运行此命令时,Maven会遍历每个模块并尝试对其进行编译(尽管它已被编译),这涉及到复制一堆文件并增加测试的总时间。看来,Maven surefire插件的“ test”命令执行了测试之前的所有步骤。我想知道是否

  • 当在我的pom.xml中启用强制使用JUnit47提供程序时,我得到: pom.xml如下所示

  • 使用Browserstack教程(https://www.browserstack.com/app-automate/appium-junit)和样本项目(https://github.com/browserstack/junit-appium-app-browserstack)我正在努力设置并行测试。 具体来说,我需要运行suirte与Cucumber.class()我的测试从场景中读取,而Br