尝试并行运行黄瓜junit不工作

问题描述 投票:0回答:1

我将并行和线程计数行添加到pom文件中的surefire插件配置中:

<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.2.3</version>
        <configuration>
          <parallel>all</parallel>
          <threadCount>2</threadCount>
          <argLine>-Xmx4g</argLine>
          <!--
          <useUnlimitedThreads>true</useUnlimitedThreads>
          -->
          <systemPropertyVariables>
            <databaseSchema>MY_TEST_SCHEMA_${surefire.forkNumber}</databaseSchema>
            <allure.results.directory>${project.build.directory}/allure-results</allure.results.directory>
          </systemPropertyVariables>
          <includes>
            <include>**/Test*.java</include>
            <include>**/*Test.java</include>
            <include>**/*Tests.java</include>
            <include>**/*TestCase.java</include>
          </includes>
        </configuration>
      </plugin>

当我使用 Maven 运行一些测试时,我看到

Running parallel.Test_RunCucumber
并且我可以看到生成了多个浏览器。问题是它似乎只在单个浏览器实例中执行测试。生成的浏览器实例都是“空”。

这是其中一项测试。另一个是相同的,只是去不同的网站。

Feature: Scenario Outlines feature file

  Scenario Outline: <site>
#    Given Step from '<scen_out_row_num>' in 'scenario-outlines' feature file
    Given the user navigates to home page '<site>'

    Examples:
      | site       |
      | https://google.com/ |
      | https://nationalpost.com/ |
      | https://ottawacitizen.com/ |

我也尝试过使用故障安全插件,但似乎没有任何区别。

我还尝试按照此处的示例进行操作:https://cucumber.io/docs/guides/parallel-execution/?lang=java#junit-4。但我的输出表明所有内容都在同一线程上运行

@@@ Thread ID -  1 - Scenario Outline Row 1 from scenario-outlines feature file.
@@@ Thread ID -  1 - Scenario Outline Row 2 from scenario-outlines feature file.
@@@ Thread ID -  1 - Scenario 1 from scenarios feature file.
@@@ Thread ID -  1 - Scenario 2 from scenarios feature file.
maven cucumber junit4
1个回答
0
投票

如果您使用

cucumber-junit
,您只能并行执行功能。这是由于 JUnit 4 中的技术限制。

如果升级到 JUnit 5,您可以使用

cucumber-junit-platform-engine
,它可以并行执行场景和示例。

查看示例项目和文档

© www.soinside.com 2019 - 2024. All rights reserved.