testng重跑和框架亮点
testng重跑设置:
tr.setAttribute("RETRY", new Integer(count)); //次数
第一种重跑方式:实现retry listener
TestngListener:OnTestFailed
设置重跑失败数统计,重跑的方法失败后,可以设置状态为skip,或其他 失败截图
RetryListener:设置retry的次数 if (count <= maxCount) { result.setAttribute("RETRY", new Integer(count)); count += 1; return true; }
第二种重跑方式:直接结束的时候run failed.xml
List<String> files = new ArrayList<String>(); files.add(reportDir + "/testng-failed.xml"); //file add xml suite.setSuiteFiles(files); return suite; //返回 suite failedSuites.add(failedXmlSuite(testng.getOutputDirectory())); //加进 failedSuites. testng.setXmlSuites(failedSuites); testng.run(); //run
listeners 使用:
1.testng.xml 设置
<listeners> <listener class-name="com.test.testng.TestngListener" /> <listener class-name="com.test.testng.RetryListener" /> </listeners>
2.class 注解设置 @Listeners({RetryListener.class})
testng并发:
单个method并发 - 5个线程并发,总共执行方法8次
@Test(dataProvider ="CsvDataProvider", invocationCount = 8, threadPoolSize = 5, description ="资金业务-同步执行-正常业务场景测试")
多个method并发
<suite name="Test-method Suite" parallel="methods" thread-count="2" >
<test name="Test-method test" group-by-instances="true">
<classes>
<class name="com.howtodoinjava.parallelism.ParallelMethodTest" />
</classes>
</test>
</suite>