重试次数配置_TestNG实践——2.用例失败重试

本文介绍了如何在TestNG中配置用例失败后的重试机制。通过实现IRetryAnalyzer接口并自定义RetryAnalyzer类,设置重试次数为3。详细讲解了如何在@Test注解中指定retryAnalyzer,以及如何通过IAnnotationTransformer监听器默认重试策略。对于DataProvider数据驱动的测试,文章解决了多组数据共用重试次数的问题,并在用例失败后通过TestListenerAdapter复位重试计数。最后,文章讨论了测试报告中重试用例的展示,并提出了优化建议,确保重试结果准确反映在测试报告中。
摘要由CSDN通过智能技术生成

@Test

用例失败重跑,retry最终一定是针对测试用例得,一个方法只有被@Test标注了才是测试用例,那么我们看下,@Test注解有没有相关属性呢?

9f04e87398c862027c14a1f1d7218090.png

retryAnalyzer,就是用于指定失败重跑得方案得,那么对应TestNG体系里提供了:

1.接口:IRetryAnalyzer

2.实现了接口得抽象类:

public abstract class RetryAnalyzerCount implements IRetryAnalyzer

所以,我们想实现失败自动重跑得方案就有了:

1.实现IRetryAnalyzer 接口

2.指定@Test得retryAnalyzer为我们得实现类

实现IRetryAnalyzer

我们已经知道IRetryAnalyzer接口有个抽象类RetryAnalyzerCount,那么我们可以自己重新实现IRetryAnalyzer,当然也可以直接继承RetryAnalyzerCount,这里我们选择直接继承RetryAnalyzerCount。

我们的RetryAnalyzer类,设置了重试计数为3,实现retryMethod,始终返回true。

a44bde41e5479aec603b3462d69b3c00.png

我们看下RetryAnalyzerCount抽象类,它的关键是实现了retry方法,count就是重试计数值,获取count后减一,只要count大于0,看retryMethod方法的返回决定是否重试,只要retry的最后返回是true,就重新运行。

42f5e396abf27ebe36ee0ba3db1711bd.png

<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值