如何使用xunit.retry设置失败测试用例仅重试一次
Xunit.retry 重试配置问题解决
核心原因
你遇到的配置不生效问题,核心是对Xunit.retry的参数定义理解有误:[Retry]特性的入参代表测试用例的最大总执行次数,不是额外重试的次数:
- 配置
[Retry(1)]:测试仅运行1次,失败也不会触发重试,和你遇到的现象完全一致 - 配置
[Retry(2)]:测试最多运行2次,首次失败后仅额外重跑1次,刚好符合你“失败时仅重跑一次”的需求
异常排查
如果配置[Retry(2)]后仍然出现失败时执行次数超过2次的情况,可按以下顺序排查:
- 检查是否在方法、类、程序集多个层级重复配置了Retry特性,导致重试次数叠加
- 检查Xunit运行器配置是否开启了自带的重试逻辑,和Xunit.retry的配置冲突导致重复执行
- 升级Xunit.retry到最新正式版,旧版本存在重试计数错误的已知问题
场景快照

内容的提问来源于stack exchange,提问作者123
相关产品推荐
相关产品推荐

