4

I couldn't find best solution for running cucumber test scenarios in parallel using gradle

The best possible solution found so far is this.. but I can't run it locally successfully

Any help much appreciated!!

Thanks in advance.

4

2 回答 2

8

看看Courgette-JVM

您可以使用 gradle 任务执行此操作。

它增加了在特性级别场景级别上并行运行黄瓜测试的功能。

它还提供了一个选项来自动重新运行失败的场景。

用法

@RunWith(Courgette.class)
@CourgetteOptions(
    threads = 10,
    runLevel = CourgetteRunLevel.SCENARIO,
    rerunFailedScenarios = true,
    showTestOutput = true,
    cucumberOptions = @CucumberOptions(
            features = "src/test/resources/features",
            glue = "steps",
            tags = {"@regression"},
            plugin = {
                    "pretty",
                    "json:target/courgette-report/courgette.json",
                    "html:target/courgette-report/courgette.html"}
    ))
    public class RegressionTestSuite {
    }
于 2017-05-10T08:02:29.573 回答
0

您应该尝试QMetry 自动化框架的小黄瓜客户端。通过使用它,您可以并行运行单个场景。您将获得 TestNG xml 运行配置、详细报告、并行执行、步骤侦听器等功能。

为了将现有的 cucumber-jvm 项目转换为 QAF,以下是 stpes:

  • 下载空白项目QAF-bank-project ANT+IVYqaf-blank-project-gradleqaf-blank-project-maven
  • 将您的功能文件复制到场景目录中
  • 将您的 java src 文件复制到 src 目录
  • 在定义黄瓜步骤的类中放置@QAFTestStepProvider注释
  • 创建 XML 配置文件并运行。您将在 config 目录下找到示例 xml 配置文件。对于 Gherkin,您的配置文件应如下所示:
<test name="Gherkin-QAF-Test">
   <parameter name="step.provider.pkg" value="your.pkg.where.steps.defined" />
   <parameter name="scenario.file.loc" value="resources/features" />
   <classes>
      <class name="com.qmetry.qaf.automation.step.client.gherkin.GherkinScenarioFactory" />
   </classes>
</test>

您可以将标签用作 run-configuration-filter 和所有其他 TestNG 和 QAF 功能的组。

于 2017-03-01T22:48:58.097 回答