我已经在黄瓜中设置了并行执行测试,以便在可用的Android设备上运行并行测试。以下是我执行的步骤。我已经通过参考黄瓜文档https://cucumber.io/docs/guides/parallel-execution/#testng
进行了设置第1步:在我的TestRunner类中扩展了AbstractTestNGCucumberTests类,并在下面的方法中添加了
@Override
@DataProvider(parallel = true)
public Object[][] scenarios() {
return super.scenarios();
}
步骤2:在pom.xml中,我在配置标签中添加了以下参数
<parallel>methods</parallel>
<threadCount>4</threadCount>
例如,如果要运行5个测试用例,则当我尝试从pom.xml / TestRunner类文件执行时。启动了4个设备,只有第一个设备执行一个测试用例。通过抛出SessionNotCreatedException和执行暂停,其余的失败。
任何人都可以最早让我知道分辨率吗?
非常感谢!
请问我以上几点是否不清楚?
答案 0 :(得分:1)
您可以通过不同的方式实施并发测试。我建议您遵循这种方式,因为您使用了Maven,TestNG和Cucumber。 您可以创建具有并行配置的TestNG xml Runner文件,并将启动器添加到该文件中(类路径)。
<!DOCTYPE suite SYSTEM "https://testng.org/testng-1.0.dtd" >
<suite name="My suite" parallel="classes" thread-count="5">
<test name="Nopackage" >
<classes>
<class name="NoPackageTest" />
</classes>
</test>
<test name="Regression1">
<classes>
<class name="test.sample.ParameterSample"/>
<class name="test.sample.ParameterTest"/>
</classes>
</test>
</suite>
Here,您可以找到有关TestNG并行性的更多详细信息以及有关XML运行程序的here。 概念是创建一个扩展抽象testng运行程序的类,然后将其添加到XML文件作为包路径,然后将XML文件作为testng运行。 将来,如果需要,您可以执行Maven命令来运行带有参数的文件,这对于CI / CD工具很有用