假设我 testng.xml 的 suite 的并发级别设置为 classes 级别:
suite name="All Test Suite" parallel="classes" thread-count="5" >
<test verbose="2" preserve-order="true"
name="C:/Users/Administrator/Downloads/testng-java-maven-main/src/test/java/com/example/testng/StepTest.java">
<packages>
<package name="com.example.testng.*"></package>
</packages>
</test>
</suite>
但是某一些类当中,我需要针对某一个方法进行并发运行,比如下面的 testreq 方法
@Test(dataProvider = "data", invocationCount = 1, threadPoolSize = 10)
public void testreq(int name, int phone) throws InterruptedException {
//
}
@DataProvider(name = "data", parallel = true)
public Object[][] get() {
return new Object[][]{
{1, 1}, {2, 2}, {3, 3}, {4, 4}, {5, 5}, {1, 1}, {2, 2}, {3, 3}, {4, 4}, {5, 5}, {1, 1}
};
}
想要达到的效果就是除了 testreq 方法进行方法级别的并发之外,其他的所有测试类都按照 suite 的 xml 中设置的 classes 级别进行测试。