与数据提供者并行执行
Parallel execution with data provider
我正在尝试 运行 使用 dataprovider 进行并行测试。我在 testng xml
中提到了 dataproviderthreadcount=3
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" data-provider-thread-count="3"parallel="methods">
<test name="Test">
<classes>
<class name="com.sample.test">
</class>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
测试方法:
@Test(dataProvider = "dp1", threadPoolSize=3,invocationCount=1)
public void Testsuitesample(String url, String add1, String add2){}
结果:打开了 3 个浏览器实例,所有三个数据都传递给了唯一的浏览器。其他浏览器仍然闲置。有解决办法吗?
您可能需要在数据提供程序方法中将 parallel 设置为 true,例如,
@DataProvider(parallel = true)
public Object[][] dp1() {
}
此外,调用计数应等于或大于线程池大小。
我正在尝试 运行 使用 dataprovider 进行并行测试。我在 testng xml
中提到了dataproviderthreadcount=3
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite" data-provider-thread-count="3"parallel="methods">
<test name="Test">
<classes>
<class name="com.sample.test">
</class>
</classes>
</test> <!-- Test -->
</suite> <!-- Suite -->
测试方法:
@Test(dataProvider = "dp1", threadPoolSize=3,invocationCount=1)
public void Testsuitesample(String url, String add1, String add2){}
结果:打开了 3 个浏览器实例,所有三个数据都传递给了唯一的浏览器。其他浏览器仍然闲置。有解决办法吗?
您可能需要在数据提供程序方法中将 parallel 设置为 true,例如,
@DataProvider(parallel = true)
public Object[][] dp1() {
}
此外,调用计数应等于或大于线程池大小。