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

标签 java spring-boot selenium cucumber junit5

对于测试框架,使用了下一组技术: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='....'为此。

关于java - 如何在 spring boot 中运行并行测试 jUnit5 - Cucumber 版本 5 及更高版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60625692/

相关文章:

javascript - Selenium:捕获 DOM 元素图像

java - 这道题中增量和加法的区别?

java - 如何在 Apache Beam 中一起使用 MapElements 和 KV?

java - Spring Boot 从服务中的回调返回响应

spring - 将 spring-boot 与 RESTEasy 集成

python-3.x - 如何处理 Selenium 中的延迟加载图像?

java - 如何从 pem 文件加载公共(public)证书?

java - future 和 promise 有什么区别?

javascript - Thymeleaf 属性和模态

python - 如何获取将结果保存到数据框的函数