我的 testng.xml 中有 100 多个测试,大多数测试由于计时问题而失败,但是当我以 block 的形式运行它们时它工作正常
我尝试过的一个无效的解决方案是将少量测试分成多个 testng.xml 文件并一个一个运行,寻找我可以在运行时执行相同操作的替代方案
这是我的 testng.xml 的样子
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite">
<listeners>
<listener class-name="baseClasses.TestListener"></listener>
</listeners>
<test name="Android">
<parameter name="platform" value="android"></parameter>
<classes>
<class name="testCases.android.VerifyLoginLogout" />
<class name="testCases.android.test1" />
<class name="testCases.android.test2" />
...
<class name="testCases.android.test100" />
</classes>
</test>
</suite>
关于如何将测试分成 block 并在运行时一个一个运行它们的任何建议,这样我就不需要将测试分成多个 testng.xml 文件
注意 - 甚至尝试在 testng.xml 中明智地运行包
最佳答案
据我了解,您想分批运行测试用例。如果我是对的,那就很简单了。只需将所有测试用例划分到多个 test
标签中,并使用要在 test
标签中执行的测试类。请看下面。
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Suite">
<listeners>
<listener class-name="baseClasses.TestListener"></listener>
</listeners>
<test name="Android-1">
<parameter name="platform" value="android"></parameter>
<classes>
<class name="testCases.android.VerifyLoginLogout" />
<class name="testCases.android.test1" />
<class name="testCases.android.test2" />
<class name="testCases.android.test3" />
</classes>
</test>
<test name="Android-2">
<parameter name="platform" value="android"></parameter>
<classes>
<class name="testCases.android.test4" />
<class name="testCases.android.test5" />
<class name="testCases.android.test6" />
</classes>
</test>
</suite>
希望对您有所帮助。
关于java - 有什么方法可以分块而不是全套来划分和运行testng测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55646279/