Обработка исключений для Selenium - отличный способ защитить ваши тесты от непредвиденных ситуаций. Например, вы можете попытаться снова найти элемент, если он больше не прикреплен к странице, например, после выполнения javascript, который что-то изменяет в элементе.
try{
driver.findElement(By.id("MyId")).click();
} catch (StaleElementReferenceException e){
driver.findElement(By.id("MyId")).click();
}
Или, например, вы можете игнорировать, если элемент не появляется, например, наложение GDPR вверху страницы после входа в систему.
try {
wait.until(ExpectedConditions.presenceOfElementLocated(By.id("gdpr_overlay")));
} catch (TimeoutException ignored){
}
Это будет игнорировать исключение, выданное ожиданием, если оверлей не появится, и продолжит выполнение теста.