当前位置: 首页 > 知识库问答 >
问题:

并行运行Serenity-Cucumber测试用例

贺景胜
2023-03-14

我是Serenity和BDD的新手。我有一个基于Serenity Cucumber和Page based模型的小型演示项目。项目结构如下:

登录和注销功能大约有8种情况。

我希望能够并行运行功能文件。实现这一点的最简单和最有效的方法是什么?

到目前为止我已经

>

  • 为每个功能创建了单独的 Runner 类,然后使用故障安全或万无一失的插件 - 这是我不想要的,因为我不希望每个功能文件都有新的运行器。

    使用了“cucumbervm并行插件”。我在pom文件中复制粘贴了以下代码。什么都没发生。

    <plugin>
    <groupId>com.github.temyers</groupId>
    <artifactId>cucumber-jvm-parallel-plugin</artifactId>
    <version>1.0.1</version>
    <executions>
        <execution>
            <id>generateRunners</id>
            <phase>validate</phase>
            <goals>
                <goal>generateRunners</goal>
            </goals>
            <configuration>
                <glue>com.automationrhapsody.cucumber.parallel.tests</glue>
                <featuresDirectory>src/test/resources/com</featuresDirectory>
                <cucumberOutputDir>target/cucumber-parallel</cucumberOutputDir>
                <format>json,html</format>
                <tags>"~@ignored"</tags>
            </configuration>
        </execution>
    </executions>
    

    查看了Serenity文档,并使用以下参数运行了我的程序,但无法实现并行执行。

    MVN验证-Dthucydides.batch.count=2-Dthucydides.batch.number=2

    我被困在这里了。任何帮助(简单有效)将不胜感激。此外,请建议如何正确完成上述选项2和3

    谢谢。

  • 共有1个答案

    朱硕
    2023-03-14

    你还需要添加下面的插件。

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.19</version>
        <configuration> 
            <forkCount>5</forkCount>
            <reuseForks>true</reuseForks>
            <includes>
                <include>**/*IT.class</include>
            </includes>
        </configuration>
    </plugin>
    
     类似资料:
    • 我目前正在尝试使用Cucumber实现并行测试运行。我设法使用万无一失的插件同时运行了两个不同的运行程序。现在我想检查是否可以并行运行SingleRunner文件多次。 我有一个签名测试。所以我需要在几个平台上并行运行。有可能吗? 这是我的跑步者档案 无跑道进近 工厂级 `导入org . open QA . selenium . web driver; ` 阶梯班 导入org.openqa.sel

    • Javav8. x-Springv5. xcucumberv4.2.0 我尝试了temyers/cucumber jvm并行插件,效果很好,但当我进入他们的gitihub页面时,他们宣布停止使用该插件b/c cucumber已经开始支持cucumber jvm 4.0的并行测试运行支持。0 我有使用以下maven依赖项的现有测试。 我有两个问题让我困惑。 为了使用cucumber-jvm,我必须更

    • Cucumber测试没有并行运行(Cucumber jvm并行插件)? 如果我使用runner类执行测试,一次将执行一个功能文件,但是当将以下插件添加到POM文件时,似乎没有功能文件执行? 即使我指向了正确的功能文件文件夹? 我的POM文件:

    • 但是,我只想运行以一些字符串开始的文件。假设前缀为“AsiaUserTests”的文件。类似下面的内容 这将导致,所以我想知道是否有一种方法可以做到这一点,因为我在Web中找不到这样的东西。

    • 我有一个用Java/Appium编写的单一测试套件(即特性)。我想在几个不同的设备(iPhone、Android手机等)上运行这个测试套件。).我还想并行地做这件事——也就是说,我想把同一个测试套件作为几个独立的线程来运行。 我如何在Junit、Cucumber或JBehave上使用Serenity来实现这一点呢?我已经找到了很多关于Cucumber如何允许多个特性并行运行的信息(这里和这里),但

    • 我正在尝试运行一个使用Mockito的JUnit cucumber测试。这是我遇到的问题。在我的cucumber赛跑课上,我有 在我的常规JUnit测试中 鉴于我一次只能有一个@RunWith,我如何将Mockito与cucumber结合使用呢?