当前,我已经使用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"}
有人可以让我知道如何在黄瓜中实现吗?