在UI自动化测试用例执行过程中,经常会有很多不确定的因素导致用例执行失败,比如网络原因、环境问题等,所以我们有必要引入重试机制(失败重跑),来提高测试用例成功率。
在不写代码的情况没有提供可配置方式,需要自己实现TestNG提供的接口,并以监听器的方式提供出来才可使用。
一、结合监听器配置
step1:新建Java类TestngRetry实现IRetryAnalyzer接口,复写retry方法
IRetryAnalyzer接口作用:实现此接口可以让失败的用例运行重试机制
public class TestngRetry implements IRetryAnalyzer {
private static Logger logger = Logger.getLogger(TestngRetry.class);
// 表示当前所重试的次数
public static int retryCount = 1;
// 表示重试最大次数限制
public int maxRetryCount = 2;
@Override
public boolean retry(ITestResult result) {
// TODO Auto-generated method stub
if (retryCount <= maxRetryCount) {
logger.info("开始重试第" + "【" + retryCount + "】次" );
retryCount++;
// 如果返回为true表示执行重试机制
return true;
}