我正在尝试使用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个浏览器实例打开,所有三个数据仅传递给浏览器。其他浏览器仍处于闲置状态。这是解决这个问题的方法吗?
答案 0 :(得分:0)
您可能需要在数据提供程序方法中将parallel设置为true,例如
@DataProvider(parallel = true)
public Object[][] dp1() {
}
此外,调用计数应等于或大于线程池大小。