testNG-失败用例重跑方法探究

简介: testNG-失败用例重跑方法探究
实现IRetryAnalyzer类,重写其中的retry方法
public class TestNGRetry  implements IRetryAnalyzer {
    private int retryCount = 1;
    private static final int maxRetryCount = 3;
    @Override
    public boolean retry(ITestResult result) {
        if (retryCount<=maxRetryCount){
            retryCount++;
            return true;
        }
        return false;
    }
    public void reSetCount(){
        retryCount=1;
    }
}


在测试方法上面
@Test(retryAnalyzer= TestNGRetry.class)

就可以执行了。


image.png


可以写个监听器,放到xml配置里面,这样所有的测试用例都能用这个重试方法了


public class RetryListener implements IAnnotationTransformer {
        @Override
        public void transform(ITestAnnotation annotation, Class testClass, Constructor testConstructor,
                Method testMethod) {
            IRetryAnalyzer retryAnalyzer = annotation.getRetryAnalyzer();//获取到retryAnalyzer的注解
            if (retryAnalyzer == null){ annotation.setRetryAnalyzer(TestNGRetry.class);
            } 
            }
         }
配置文件
<?xml version="1.0" encoding="UTF-8"?>
<suite name="Suite" parallel="false" thread-count="2">
 <listeners>
        <listener
            class-name="chongshi.tesng.TestRunnerListener" />
        <listener class-name="chongshi.tesng.RetryListener"/>
    </listeners>
  <test name="Test">
    <classes>
      <class name="chongshi.tesng.New"/>
    </classes>
  </test> <!-- Test -->
</suite> <!-- Suite -->

测试函数


image.png

image.png


这样就可以完成了所有测试用例的重试工作。


可以加到我们的测试中使用了。

相关文章
|
5月前
|
测试技术
单元测试问题之使用TestMe时利用JUnit 5的参数化测试特性如何解决
单元测试问题之使用TestMe时利用JUnit 5的参数化测试特性如何解决
68 2
|
5月前
|
Cloud Native 数据处理
项目环境测试问题之当异步任务在运行过程中抛出非预期的异常会导致后果如何解决
项目环境测试问题之当异步任务在运行过程中抛出非预期的异常会导致后果如何解决
|
6月前
|
测试技术
详解单元测试问题之Mockito中添加或更新打桩列表如何解决
详解单元测试问题之Mockito中添加或更新打桩列表如何解决
72 3
|
6月前
|
测试技术
详解单元测试问题之@InjectMocks注解的执行逻辑如何解决
详解单元测试问题之@InjectMocks注解的执行逻辑如何解决
121 1
|
6月前
|
测试技术
单元测试策略问题之Mock测试的问题如何解决
单元测试策略问题之Mock测试的问题如何解决
|
6月前
|
测试技术 Apache
单元测试策略问题之设计有效的单测用例问题如何解决
单元测试策略问题之设计有效的单测用例问题如何解决
|
6月前
|
测试技术 开发者
单元测试问题之增加代码变更如何解决
单元测试问题之增加代码变更如何解决
|
8月前
|
测试技术
Cypress 运行失败用例的方法
Cypress 运行失败用例的方法
105 0
|
自然语言处理 搜索推荐 Java
【网安AIGC专题10.25】9 LIBRO方法(ICSE2023顶会自动化测试生成):提示工程+查询LLM+选择、排序、后处理(测试用例函数放入对应测试类中,并解决执行该测试用例所需的依赖)
【网安AIGC专题10.25】9 LIBRO方法(ICSE2023顶会自动化测试生成):提示工程+查询LLM+选择、排序、后处理(测试用例函数放入对应测试类中,并解决执行该测试用例所需的依赖)
305 0
|
JSON JavaScript 测试技术
接口测试平台代码实现51: 自动异常测试-4
接口测试平台代码实现51: 自动异常测试-4
接口测试平台代码实现51: 自动异常测试-4

热门文章

最新文章

下一篇
开通oss服务