Установить по умолчанию для ExtentTest значение FAILED
Я использую экстренные отчеты, чтобы добавить отчеты для моего теста, написанного на Java и Selenium. Я замечаю, что если в ExtentTest есть два журнала, "INFO" и "PASSED", то, если журнал проходов не перехватывается, он будет считаться "PASSED". Как я могу изменить его таким образом, чтобы, если тест не пройден, он автоматически подпевался как Неудачный?
2 ответа
Невозможно изменить поведение, чтобы не пройти тест по умолчанию. Это проектное решение, за которым следует каждая тестовая среда (TestNG, Junit, NUnit и т. Д.), А не только отчеты об объемах.
Предполагается запустить тест, что он всегда будет проходить. Таким образом, даже если у вас есть только информационные журналы, тестовый набор помечается как пройденный.
Однако, если по умолчанию вы предполагаете, что тест не пройден, до тех пор, пока вы не встретите PASS, тест по-прежнему будет считаться НЕУДАЧЕННЫМ, потому что даже одно состояние сбоя во всем тесте не проходит тест, независимо от того, сколько у вас есть проходных журналов.
Вы не предоставляете подробности своего кода и версии, которую вы используете для отчета по экстентам. Предположим, вы используете версию отчета об экстенте 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();
}