我有4个@Test方法,并且希望每个方法运行3次。我想在12个线程中同时执行所有这些操作。
我创建了一个像这样的testng.xml文件
<suite name="Suite1" verbose="1" parallel="methods" thread-count="100">
<test name="Test1">
<classes>
<class name="Tests"/>
</classes>
</test>
<test name="Test2">
<classes>
<class name="Tests"/>
</classes>
</test>
<test name="Test3">
<classes>
<class name="Tests"/>
</classes>
</test>
</suite>
如果我设置parallel =“methods”,TestNG将在4个线程中为Test1执行4种测试方法,然后对Test2和Test3执行相同的操作。但是我不想在运行Test2之前等待Test1完成。 TestNG能够同时运行Test1,Test2和Test3(如果parallel =“tests”),但是在这种情况下,它为每个Test依次执行4种测试方法。
有没有办法告诉TestNG根本不等待并在单独的线程中启动所有Test的所有方法?
最佳答案
让套件运行并行测试,然后每个测试都可以运行并行方法。就像是:
<suite name="Suite1" verbose="1" parallel="tests" thread-count="10">
<test name="Test1" parallel="methods" thread-count="4">
<classes>
<class name="Tests"/>
</classes>
</test>
<test name="Test2" parallel="methods" thread-count="4">
<classes>
<class name="Tests"/>
</classes>
</test>
<test name="Test3" parallel="methods" thread-count="4">
<classes>
<class name="Tests"/>
</classes>
</test>
</suite>
关于testng - TestNG并行执行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19211726/