如何 运行 在 spring 引导中并行测试 jUnit5 - Cucumber 版本 5 及更高版本

How to run parallel test jUnit5 in spring boot - cucumber version 5 and more

测试框架使用了下一组技术:Java、Maven、Selenium、Junit、Cucumber、Spring Boot、YAML

cucumber.version = 5.4.0 Cucumber-JVM 现在支持 JUnit5,我们可以使用并行 我尝试添加 -Dcucumber.execution.parallel.enabled=true -Dcucumber.execution.parallel.config.strategy=dynamic

https://github.com/cucumber/cucumber-jvm/blob/master/release-notes/v5.0.0.md

被使用:

            <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>${maven-surefire-plugin.version}</version>
            <configuration>
                <includes>
                    <include>**/RunCucumberIT.java</include>
                    <release>11</release>
                </includes>
                <!--                    <parallel>methods</parallel>-->
                <!--                    <threadCount>4</threadCount>-->
            </configuration>
        </plugin>

您可以通过将 junit-platform.properties 文件添加到您的类路径根目录来提供选项。例如:

src/test/resources/junit-platform.properties

cucumber.execution.parallel.enabled=true
cucumber.execution.parallel.config.strategy=fixed
cucumber.execution.parallel.config.fixed.parallelism=10

您还可以通过 Surefires/Failsafes configurationParameters 参数字段将选项传递给 JUnit 平台。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-failsafe-plugin</artifactId>
    <version>3.0.0-M3</version>
    <configuration>
        <properties>
            <configurationParameters>
                cucumber.execution.parallel.config.fixed.parallelism=24
            </configurationParameters>
        </properties>
    </configuration>
</plugin>

并且由于 Cucumber 是一个 JUnit 平台引擎,您还可以使用任何其他方式将配置参数传递给 JUnit Platform

请注意,-D 将不起作用,因为 surefire 会启动一个新的 JVM,you'd have to use `-DargLine='....' 为此。