将 ExtentTest 的默认值设置为 FAILED

set the default of a ExtentTest to FAILED

我正在使用 extentreports 为我的测试添加报告,该报告是用 Java 和 Selenium 编写的。 我注意到如果 ExtentTest 有两个日志,"INFO" 和 "PASSED",如果未捕获通过日志,它将被视为通过。我怎样才能改变它,如果测试没有通过,它会自动被标记为失败?

无法更改默认情况下使测试用例失败的行为。这是一个设计决策,每个测试框架(TestNG、Junit、NUnit 等)都遵循,而不仅仅是范围报告。

假设是开始测试,它总是会通过。所以即使你只有信息日志,测试用例也被标记为通过。

但是,如果默认情况下,你假设测试是失败的,直到遇到PASS,测试仍然被认为是FAILED,因为,即使是整个测试中的一个失败状态,无论通过多少次,测试都失败了您拥有的日志。

您没有提供用于范围报告的代码和版本的详细信息。 假设您使用的是 extent report version 2.40 并使用此代码:

@AfterMethod
public void tearDown(ITestResult result)
{
    if(result.getStatus()==ITestResult.FAILURE)
    {
    //hope u know how to create ExtenTest and ExtentReport instance 
    //logger is extent test instance
    logger.log(LogStatus.FAIL, "Title verification", image);


}

//report is ExtentReport instance
report.endTest(logger);
report.flush();

}