如何从黄瓜方案文件访问TestNg参数(动态更改方案名称)

时间:2019-05-24 00:24:38

标签: cucumber

当前,我已经使用TestNG + Cucumber实现了黄瓜赛跑者级并行项目,并且效果很好。我们正在使用诱惑力来生成报告,但是当我在2个设备中并行成像中运行测试用例时,报告会被替换,因为我的方案名称在功能文件中不是唯一的。现在,我想使我的方案名称动态化,因此我想输入从TestNg params函数获得的设备名称和操作系统版本,并在Feature文件中访问它。这是我获得参数的Runner文件。

import org.testng.annotations.BeforeTest;
import cucumber.api.java.Before;
import org.testng.annotations.Parameters;

import cucumber.api.CucumberOptions;
import cucumber.api.testng.AbstractTestNGCucumberTests;
import device.Device;
import device.DeviceFactory;
import gherkin.formatter.model.Scenario;

@CucumberOptions(plugin = { "pretty", "html:target/html/", "json:target/cucumber.json", "junit:TEST-all.xml" }, glue = {
        "steps" }, tags = { "@Mobile" })
public class ParallelRunner extends AbstractTestNGCucumberTests {

    @BeforeTest
    @Parameters({ "deviceName", "platformVersion" })
    public void executeParallelTests(String deviceName, String platformVersion) {

        Device device = new Device();
        device.setDeviceName(deviceName);
        device.setOsVersion(platformVersion);
        DeviceFactory.setDevice(device);
    }



}

我想在我的功能文件中实现类似的目的

  Feature: SignUp
  @Android @IOS @Mobile
  Scenario: SignUp  ${"eviceName"}  ${"platformVersion"}

有人可以让我知道如何在黄瓜中实现吗?

0 个答案:

没有答案