【问题标题】:Running JUnit Tests in Parallel in IntelliJ IDEA在 IntelliJ IDEA 中并行运行 JUnit 测试
【发布时间】:2011-04-03 03:08:04
【问题描述】:

我有一大套测试需要大约半小时才能运行,并且希望能够并行测试类。

有没有办法用 IntelliJ IDEA 9 做到这一点?

【问题讨论】:

标签: java unit-testing junit intellij-idea


【解决方案1】:

IDEA 将仅从版本 10 开始理解并行 JUnit 测试。

有一个跟踪器问题,您可以投票支持并观察进展: http://youtrack.jetbrains.net/issue/IDEA-47103

我们计划将其添加到 IDEA 10 中,但优先级将取决于票数。

【讨论】:

    【解决方案2】:

    为后代回答迟到。

    您可以通过更改测试运行配置中的Fork mode,使 JUnit 测试在 IntelliJ 中以任何粒度级别并行(或串行)运行。

    注意不要将此与 Allow parallel run 选项混淆,后者可让您在 IDE 中多次启动测试执行。

    【讨论】:

    • “允许并行运行”意味着可以重复启动相同的运行配置,而之前的版本仍在运行。这可能不是人们试图让他们的测试同时运行时所寻找的——这允许他们并行运行相同的测试集,但不允许单个测试同时运行。
    • Intellij 上的 fork 模式设置不会导致并发测试执行。它确实为测试启动了一个新的 JVM,这增加了测试延迟;但是,它会清除测试之间的内存,这对于使用单例类或其他长寿命类的应用程序来说可能是个问题。
    • 我不认为这会导致并行文本执行,对我来说它甚至会使测试执行速度减慢 5 倍。我认为分叉模式是用来在不同的 JVM 中分别运行测试,而不是为了加速测试执行!!
    【解决方案3】:

    2022 年更新:此插件可让您在 IntelliJ IDEA 中使用 JUnit4、JUnit5 和 TestNG 并行运行和调试测试:https://plugins.jetbrains.com/plugin/16229-unit-test-parallel-runner


    如果你使用的是 JUnit4,你可以试试这个插件: https://plugins.jetbrains.com/plugin/12959-junit4-parallel-runner

    并行运行测试就像点击旁边的绿色三角形一样简单

    • class -> 类中所有测试方法并行运行
    • 包 -> 包中的所有类都是并行运行的

    【讨论】:

    • 这应该是2022年公认的答案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多