TestNG marks a test as Fail, if the code inside the test raises any Exception.
В вашем коде, как вы регулируете исключение по своему усмотрению, поймав его, исключение не будет доведен до абонента, так, TestNG
никогда не знает что исключение возникает в коде.
Удалить try-catch
блок, поэтому исключение будет поднято из теста, поэтому TestNG
может пометить тест как Fail
.
попробуйте следующий код:
@Test
public void scrollToElementByLocator() {
driver.findElement(By.id("wrong locator")).click();
}
Примечание: Вы должны отметить метод с @Test
аннотацию, чтобы сказать TestNG
, что это метод испытания.
Если вы хотите выполнить какие-либо действия, если исключение воскресает, то попробуйте следующий код (кидать исключение вы захватили с помощью throw
ключевого слова):
@Test
public void scrollToElementByLocator() {
try {
driver.findElement(By.id("wrong locator")).click();
} catch (Exception e) {
System.out.println("Exception! - unable to scroll to element, Exception: " + e.toString()); //prints the exception
throw e;
}
}
'Исключение не показывает, как сбой в TestNG == wrong', в этом случае исключение отображается в консоли? Или это касается маркировки теста как «Сбой»? –
@Naveen исключение выводится на консоль, только dosnt показывается с красным значком на консоли TestNG eclipse, спасибо – Gbru
Возможный дубликат [Почему мой метод «Wait» не прерывается или исключает исключение?] (Http: // stackoverflow. com/questions/42156532/why-is-my-wait-method-not-failing-or-catching-exception) – juherr