我在Intellij IDEA中运行了9个JUnit(实际上是Spockframework)测试。 大约需要3秒钟。
我想利用所有核心,因此我切换测试配置fork模式 - 类。
Edit configurations > Fork mode > class
这会导致构建时间增加到8秒。尝试使用fork模式方法使它成为22秒。 测试运行程序过程看起来像是按顺序运行而不是并行运行。
关于为什么不进行分支测试的任何想法都按预期工作?
答案 0 :(得分:6)
分叉只意味着您将为每次测试运行获得一个单独的进程,但该进程不一定会并行运行。
从我所见,JUnit plugin没有选项可以并行运行测试。如果您正在使用Gradle,请使用docs中显示的maxParallelForks
选项(您可能知道,但您可以直接从IntelliJ运行Gradle任务)。
如果您使用Maven,请尝试-t option。
答案 1 :(得分:1)
你可以试试这个插件:https://plugins.jetbrains.com/plugin/16229-unit-test-parallel-runner
如果您在单个类中运行单元测试,它会并行运行所有测试方法,如果您在多个类中运行单元测试,它会并行运行类,但单个类中的方法会串行运行(这样会更快)除非你有一台非常高端的机器)。