JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

TestNG重新运行失败的测试用例 testng运行报错

wys521 2024-11-04 15:37:20 精选教程 27 ℃ 0 评论

每次套件中的测试失败时,TestNG 都会在输出目录中创建一个名为testng-failed.xml的文件。此 XML 文件包含仅重新运行这些失败的方法所需的信息,使您可以快速重现失败,而不必运行整个测试。因此,典型的会话如下所示:

java -classpath testng.jar;%CLASSPATH% org.testng.TestNG -d test-outputs testng.xml
java -classpath testng.jar;%CLASSPATH% org.testng.TestNG -d test-outputs test-outputs\testng-failed.xml

请注意,testng-failed.xml将包含所有必需的依赖方法,以便保证您运行失败的方法,而不会出现任何 SKIP 故障。

有时,您可能希望 TestNG 在测试失败时自动重试。在这些情况下,可以使用重试分析器。将重试分析器绑定到测试时,TestNG 会自动调用重试分析器,以确定 TestNG 是否可以再次重试测试用例,以尝试查看刚刚失败的测试现在是否通过。以下是使用重试分析器的方法:

构建接口org.testng.IRetryAnalyzer 的实现

将此实现绑定到@Test注释,例如,@Test(retryAnalyzer = LocalRetry.class)

下面是重试分析器的示例实现,该重试分析器最多重试三次。

import org.testng.IRetryAnalyzer;
import org.testng.ITestResult;
 
public class MyRetry implements IRetryAnalyzer {
 
  private int retryCount = 0;
  private static final int maxRetryCount = 3;
 
  @Override
  public boolean retry(ITestResult result) {
    if (retryCount < maxRetryCount) {
      retryCount++;
      return true;
    }
    return false;
  }
}
import org.testng.Assert;
import org.testng.annotations.Test;
 
public class TestclassSample {
 
  @Test(retryAnalyzer = MyRetry.class)
  public void test2() {
    Assert.fail();
  }
}

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表