Что такое исключения?
Исключением является ошибкой , которая происходит во время выполнения программы. Однако при запуске программы языки программирования генерируют исключение, которое следует обрабатывать, чтобы избежать сбоя программы.
Исключение указывает на то, что, хотя событие может произойти, событие этого типа случается нечасто. Когда метод не может обработать исключение, оно передается вызывающей функции. В конце концов, когда исключение выбрасывается из основной функции, программа внезапно завершается.
В этом руководстве вы узнаете:
- Что такое исключения?
- Исключения в драйвере Selenium Web
- Обработка исключений Selenium
- Способы отображения исключения
Общие исключения в драйвере Selenium Web
Имя исключения | Описание |
ElementNotVisibleException | Этот тип исключения Selenium возникает, когда для существующего элемента в DOM задана скрытая функция. |
ElementNotSelectableException | Это исключение Selenium возникает, когда элемент представлен в DOM, но вы можете выбрать его. Следовательно, невозможно взаимодействовать. |
NoSuchElementException | Это исключение возникает, если элемент не может быть найден. |
NoSuchFrameException | Это исключение возникает, если целевой кадр, на который нужно переключиться, не существует. |
NoAlertPresentException | Это исключение возникает, когда вы переключаетесь на отсутствие предупреждений. |
NoSuchWindowException | Это исключение возникает, если целевое окно, подлежащее переключению, не существует. |
StaleElementReferenceException | Это исключение Selenium возникает, когда веб-элемент отсоединяется от текущего DOM. |
SessionNotFoundException | WebDriver действует после выхода из браузера. |
TimeoutException | Выбрасывается, когда для выполнения команды недостаточно времени. Например, искомый элемент не был найден в указанное время. |
WebDriverException | Это исключение возникает, когда WebDriver действует сразу после закрытия браузера. |
ConnectionClosedException | Этот тип исключения возникает при отключении драйвера. |
ElementClickInterceptedException | Команда не может быть завершена, поскольку элемент, получающий события, скрывает элемент, на который был запрошен щелчок. |
ElementNotInteractableException | Это исключение Selenium выдается, когда любой элемент представлен в DOM. Однако взаимодействовать с таким элементом невозможно. |
ErrorInResponseException | Это происходит при взаимодействии с расширением Firefox или удаленным сервером драйверов. |
ErrorHandler.UnknownServerException | Исключение используется в качестве заполнителя в случае, если сервер возвращает ошибку без трассировки стека. |
ImeActivationFailedException | Это ожидание произойдет, когда активация механизма IME не удалась. |
ImeNotAvailableException | Это происходит, когда поддержка IME недоступна. |
InsecureCertificateException | Навигация заставила пользовательский агент выдать предупреждение о сертификате. Это может быть вызвано недействительным или просроченным сертификатом TLS. |
InvalidArgumentException | Это происходит, когда аргумент не принадлежит ожидаемому типу. |
InvalidCookieDomainException | Это происходит, когда вы пытаетесь добавить cookie в другом домене вместо текущего URL. |
InvalidCoordinatesException | Этот тип исключения соответствует недопустимой операции взаимодействия. |
InvalidElementStateExceptio | Это происходит, когда команда не может быть завершена, когда элемент недопустим. |
InvalidSessionIdException | Это Исключение произошло, когда данный идентификатор сеанса не включен в список активных сеансов. Это означает, что сеанс не существует или также неактивен. |
InvalidSwitchToTargetException | Это происходит, когда целевой кадр или окно, подлежащее переключению, не существует. |
JavascriptException | Эта проблема возникает при выполнении JavaScript, заданного пользователем. |
JsonException | Это происходит, когда вы позволяете получить сеанс, когда сеанс не создан. |
NoSuchAttributeException | Этот вид исключения возникает, когда атрибут элемента не может быть найден. |
MoveTargetOutOfBoundsException | Это происходит, если цель, указанная в методологии ActionChains move (), недействительна. Например, вне документа. |
NoSuchContextException | ContextAware проводит тестирование мобильных устройств. |
NoSuchCookieException | Это исключение возникает, когда для всех связанных файлов cookie просматриваемого в данный момент документа не найдено ни одного файла cookie, соответствующего заданному пути. |
NotFoundException | Это исключение является подклассом WebDriverException. Это произойдет, когда элемент в DOM не существует. |
RemoteDriverServerException | Это исключение Selenium генерируется, когда сервер не отвечает из-за проблемы, связанной с неправильными описанными возможностями. |
ScreenshotException | Сделать снимок экрана невозможно. |
SessionNotCreatedException | Это происходит, когда новый сеанс не может быть успешно создан. |
UnableToSetCookieException | Это происходит, если драйвер не может установить cookie. |
UnexpectedTagNameException | Случается, если класс поддержки не получил веб-элемент, как ожидалось. |
UnhandledAlertException | Это ожидание возникает, когда есть предупреждение, но WebDriver не может выполнить операцию предупреждения. |
UnexpectedAlertPresentException | Это происходит при появлении неожиданного предупреждения. |
UnknownMethodException | Это исключение возникает, когда запрошенная команда совпадает с известным URL-адресом, но не соответствует методологии для определенного URL-адреса. |
UnreachableBrowserException | Это исключение возникает только в том случае, если браузер по какой-либо причине не открывается или не запускается. |
UnsupportedCommandException | Это происходит, когда удаленный WebDriver не отправляет допустимые команды, как ожидалось. |
Обработка исключений Selenium
Вот некоторые важные стандарты, с помощью которых вы можете обрабатывать исключения в Selenium WebDriver:
Try-catch : этот метод может перехватывать исключения, в котором используется комбинация ключевых слов try и catch. Команда Try указывает начало блока, а Catch помещается в конец блока try, что помогает разрешить исключение.
пытаться{// Код} catch (Exception e) {// Код для обработки исключения}
- Несколько блоков catch : существуют различные типы исключений, и вы можете ожидать более одного исключения из одного блока кода. Множественные уловки помогают обрабатывать каждый тип исключений отдельно с помощью отдельного блока кода. Его можно использовать более чем для двух блоков catch, и нет ограничений на количество блоков catch.
пытаться{//Код} catch (ExceptionType1 e1) {// Код для обработки исключения 1} catch (ExceptionType2 e2) {// Код для обработки исключения 2}
- Throw : когда вы хотите сгенерировать исключение, ключевое слово Throw используется для создания исключения для его обработки во время выполнения. Когда вы генерируете исключение, не обрабатывая его, им необходимо использовать ключевое слово Throw.
public static void anyFunction () выдает исключение {пытаться {// напишите здесь свой код} Поймать (исключение b) {// Делайте то, что хотите// Сбрасываем исключение обратно в системубросить (б);}}
- Множественные исключения : вы можете упомянуть различные исключения в предложении throws.
public static void anyFunction () выбрасывает ExceptionType1, ExceptionType2 {пытаться {// напишите здесь свой код} catch (ExceptionType1 e1) {// Код для обработки исключения 1} catch (ExceptionType1 e2) {// Код для обработки исключения 2}
- Наконец : ключевое слово Final используется для создания блока кода под блоком try. Это последний код, который помогает вам выполняться независимо от возникновения исключения.
пытаться {//Код} catch (ExceptionType1 e1) {// Поймать блок} catch (ExceptionType2 e2) {// Поймать блок} catch (ExceptionType3 e3) {// Поймать блок} наконец-то {// Блок finally выполняется всегда.}
Способы отображения исключения
Вы также можете использовать следующие методы для отображения информации об исключении:
- printStackTrace () : эта функция печатает трассировку стека, имя исключения и другое полезное описание.
- toString () : эта функция возвращает текстовое сообщение с описанием имени и описания исключения.
- getMessage () : помогает отобразить описание исключения.
Резюме:
- Исключение - это ошибка, возникающая во время выполнения программы.
- Try-catch: этот метод может перехватывать исключения, в котором используется комбинация ключевых слов try и catch.
- Множественные уловки помогают обрабатывать каждый тип исключения отдельно с помощью отдельного блока кода.
- Ключевое слово Throw используется для создания исключения для его обработки во время выполнения.
- printStackTrace (): эта функция печатает трассировку стека, имя исключения и другое полезное описание.
- toString (): эта функция возвращает текстовое сообщение с описанием имени и описания исключения.
- getMessage (): помогает отобразить описание исключения.