在intelliJ中并行运行junit测试

bha*_*ral 22 junit intellij-idea

可以在intelliJ中并行运行junit测试吗?如果是这样,我该怎么做?

我将"fork"参数设置为类级别,这没有做任何事情 - 实际上,它使一切都变慢了,所以我不确定什么"fork"这有益吗?

是否有可能使用intelliJ,或者我需要一些花哨的测试框架和所涉及的所有hoo-hah?

最后,假设这是可能的,可以控制分叉或线程的数量或者他们想要调用的任何东西吗?

更新:有人链接到可能回答此问题的问题.我在发帖前看了那个问题 - 我不确定那个问题到底是什么"答案".它只是说有一个问题跟踪器,这个问题已在intelliJ中实现.我不知道如何在任何地方实现它.

更新:"什么都不做"意味着什么呢?它只会使事情变得更慢,而不是有用的.我的意思是,也许你的测试运行速度非常快,你想放慢它们以欣赏一些巴赫?太棒了.我只想让我跑得更快,我厌倦了巴赫.

che*_*ffe 6

您可以使用junit-toolbox.这是jUnit的一个扩展库,它在jUnit站点上列出.

此扩展提供ParallelSuite.通过这种方式,您几乎可以创建一个并行执行测试的AllTest类.使用junit-toolbox引入的模式功能,最小AllTest看起来像下面的代码.

@RunWith(ParallelSuite.class)
@SuiteClasses("**/*Test.class")
public class AllTests {}
Run Code Online (Sandbox Code Playgroud)

这将创建与JVM通过availableProcessors报告一样多的并行执行线程.要覆盖它,您可以设置系统属性maxParallelTestThreads.