首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用testNG失败之前重复Java测试用例?

如何在使用testNG失败之前重复Java测试用例?
EN

Stack Overflow用户
提问于 2022-11-15 05:58:35
回答 2查看 25关注 0票数 0

我有许多使用testNG的Java片状测试,这些测试可能会随机失败。现在,我想重复运行它们,直到失败,并看到日志输出。testNG能做到这一点吗?

似乎有许多关于如何重试失败测试的问题,但是关于如何在失败之前重新尝试测试却没有解决方案。

EN

回答 2

Stack Overflow用户

发布于 2022-11-15 06:07:13

考虑使用testNG的重试分析器。

  1. 创建一个重试分析器,它将“检查”测试执行的结果,并决定是否重新运行测试。
代码语言:javascript
复制
public class MyRetryAnalyzer implements IRetryAnalyzer {

    @Override
    public boolean retry(ITestResult result) {
         // analyze the result and return true if you want to rerun the test
         // return false other   
    }
}
  1. 将此重试分析器应用于您的测试:
代码语言:javascript
复制
public class MyTest {

    @Test(retryAnalyzer = MyRetryAnalyzer.class)
    public void sampleTest()
    {
        ....
    }

请参阅有关此功能这里的示例。

票数 0
EN

Stack Overflow用户

发布于 2022-11-15 10:36:11

有一次做了类似的事情,我建议您做一个while循环,它将运行测试直到出现故障。

当出现故障时,更改标志状态,这将有助于停止循环。

代码语言:javascript
复制
boolean flag = true;
    
    while (flag){
        
        // Run Test
        // and if test fail change flag
        
        flag = false ;
    }
    Assert.assertTrue(flag);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74441166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档