如何与maven一起在黄瓜中执行测试的并行执行



我在cucumber中设置了一个测试的并行执行,用于在可用的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而失败,并且执行暂停。

有谁能尽早告诉我决议吗?

提前感谢!

请让我知道,如果从我的以上几点有什么不清楚的地方?

您可以用不同的方式实现并发测试。我建议采用这种方式,因为您使用了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>

在这里,您可以找到更多关于TestNG并行性的详细信息,以及关于xml运行程序的详细信息。其概念是创建一个扩展抽象testng runner的类,然后将其作为包路径添加到XML文件中,然后将XML文件作为testng运行。将来,如果需要,您可以执行Maven命令来运行带有参数的文件,这对CI/CD工具很有用

最新更新