1: 实现接口IRetryAnalyzer中的retry方法,如下:
public class MyRetryAnalyzer implements IRetryAnalyzer {
private int curentRetryCnt = 0;
private int maxRetryCnt = 2;
public boolean retry(ITestResult result) {
if (curentRetryCnt < maxRetryCnt) {
//Add some logs here
curentRetryCnt ++;
return true;
}
return false;
}
}
2: 覆盖IAnnotationTransformer中的方法,如下:
public class MyRetryListener implements IAnnotationTransformer {
@Override
public void transform(ITestAnnotation testannotation, Class testClass,
Constructor testConstructor, Method testMethod) {
IRetryAnalyzer retry = testannotation.getRetryAnalyzer();
if (retry == null) {
testannotation.setRetryAnalyzer(MyRetryAnalyzer.class);
}
}
}
3: 在testNG.xml中增加该listener,如下:
<listeners>
<listener class-name="framework.testNG.MyRetryListener"/>
</listeners>
Web UI自动化测试框架搭建之六:扩展testNG支持自动执行失败的脚本
最新推荐文章于 2019-05-15 12:13:08 发布