我正在使用 gradle + spock + groovy 进行集成测试。目前我的测试套件执行时间约为1小时。所以我决定考虑并行测试执行。
Gradle可以在forks(maxParallelForks)的帮助下进行并行测试。但在这种情况下,我受到限制(叉子的数量==我的机器上的核心数量)。
Spock本身不支持并行测试执行。
所以我的问题是:有没有类似于maven-surefire-plugin的gradle插件(或测试框架),它们有两个并行测试执行选项(通过Threads和Forks)?
答案 0 :(得分:2)
实际上,文档说的是关于maxParallelForks
The maximum number of forked test processes to execute in parallel. The default value is 1 (no parallel test execution). It cannot exceed the value of max-workers for the current build.
但是,您可以通过cmdline parameter
增加超过处理器数量的最大工作人员。--max-workers (incubating)
Sets the maximum number of workers that Gradle may use. For example--max-workers=3. The default is the number of processors.
因此,您可以使用比处理器更多的for来执行,只有在数据驱动的迭代中才能以这种方式并行化。