用于单元测试的 Intellij IDEA 分叉模式变慢

Intellij IDEA fork mode for unit tests slows down

我正在 运行在 Intellij IDEA 中测试 9 个 JUnit(实际上是 Spockframework)。 大约需要3秒。

我想使用所有内核,因此我切换测试配置 fork 模式 - class。 Edit configurations > Fork mode > class

这会导致构建时间增加到 8 秒。尝试使用 fork 模式方法使其耗时 22 秒。 还要测试 运行ner 进程,看起来它们是按顺序 运行 而不是并行进行的。

关于为什么分叉测试没有按预期工作有什么想法吗?

分叉只是意味着您将为每个测试获得一个单独的进程 运行,但该进程不一定 运行 并行。

据我所知,JUnit plugin does not have an option to run tests in parallel. If you're using Gradle, use the maxParallelForks option as shown in the docs(您可能知道,但您可以直接从 IntelliJ 运行 Gradle 任务)。

如果您使用 Maven,请尝试 -t option

你可以试试这个插件:https://plugins.jetbrains.com/plugin/16229-unit-test-parallel-runner

如果您 运行 在单个 class 中进行单元测试,则 运行 并行执行所有测试方法,如果您 运行 在许多 [=] 中进行单元测试15=]es,它 运行s classes 是并行的,但是单个 class 中的方法是串行的 运行(这种方式更快,除非你有一个非常高端的机)。