selenium-webdriver
Исключения в Selenium-WebDriver
Поиск…
Вступление
Существует ряд исключений, которые можно использовать при использовании webdriver. Приведенные ниже примеры призваны дать представление о том, что они означают.
Исключения на Python
Документация по исключению селена
ElementNotInteractableException: выбрасывается, когда элемент присутствует в DOM, но взаимодействие с этим элементом ударит по другому элементу из-за порядка рисования
- ElementNotSelectableException: выбрано при попытке выбрать неэлектируемый элемент. Примеры невыбираемых элементов:
- скрипт
- ElementNotVisibleException: Брошено, когда элемент присутствует в DOM, но он не отображается, и с ним невозможно взаимодействовать. Чаще всего встречаются при попытке щелкнуть или прочитать текст элемента, который скрыт от представления.
- ErrorInResponseException: выбрасывается при возникновении ошибки на стороне сервера. Это может произойти при общении с расширением firefox или удаленным сервером драйверов.
- ImeActivationFailedException: Брошено при активации движка IME.
- ImeNotAvailableException: брошен, когда поддержка IME недоступна. Это исключение выбрасывается для каждого вызова метода, связанного с IME, если поддержка IME недоступна на компьютере.
- InvalidArgumentException: аргументы, переданные команде, являются недействительными или неверными.
- InvalidCookieDomainException: выбрано при попытке добавить файл cookie в другом домене, чем текущий URL.
- InvalidElementStateException: выбрано, когда действие приведет к недопустимому состоянию элемента. Подклассы:
- ElementNotInteractableException
- ElementNotSelectableException
- ElementNotVisibleException
- InvalidSelectorException: выбрано, когда селектор, который используется для поиска элемента, не возвращает WebElement. В настоящее время это происходит только тогда, когда селектор является выражением xpath, и он либо синтаксически недействителен (т. Е. Это не выражение xpath), либо выражение не выбирает WebElements (например, «count (// input)»).
- InvalidSwitchToTargetException: Брошено, когда цель переключения кадра или окна не существует.
- MoveTargetOutOfBoundsException: Брошено, когда объект, предоставленный методу moveChains (), недействителен, то есть вне документа.
- NoAlertPresentException: Брошено при переключении без уведомления. Это может быть вызвано вызовом операции в классе Alert (), когда предупреждение еще не отображается на экране.
- NoSuchAttributeException: Брошено, когда атрибут элемента не найден. Вы можете проверить, существует ли атрибут в конкретном браузере, с которым вы тестируете. Некоторые браузеры могут иметь разные имена свойств для одного и того же свойства. (IE8 .innerText против Firefox .textContent)
- NoSuchElementException: Брошено, когда элемент не найден. Если вы столкнулись с этим исключением, вы можете проверить следующее:
- Проверьте свой селектор, используемый в вашем find_by ...
- Элемент может пока не отображаться на экране во время операции поиска (веб-страница по-прежнему загружается) см. Selenium.webdriver.support.wait.WebDriverWait () для того, как писать ожидающую оболочку, чтобы ждать появления элемента.
- NoSuchFrameException: Брошено, когда цель кадра для переключения не существует.
- NoSuchWindowException: Брошено, когда цель, которую нужно переключить, не существует. Чтобы найти текущий набор активных оконных дескрипторов, вы можете получить список активных оконных дескрипторов следующим образом:
print driver.window_handles
- RemoteDriverServerException:
- StaleElementReferenceException: Брошено, когда ссылка на элемент теперь «устарела». Stale означает, что элемент больше не отображается в DOM страницы. Возможные причины исключения StaleElementReferenceException включают, но не ограничиваются:
- Вы больше не на одной странице, или страница, возможно, обновилась с момента ее нахождения.
- Элемент, возможно, был удален и повторно добавлен на экран, так как он был расположен. Такие, как перемещаемый элемент. Обычно это может происходить с использованием структуры javascript, когда значения обновляются и узел перестраивается.
- Элемент, возможно, находился внутри iframe или другого контекста, который был обновлен.
- TimeoutException: Брошено, когда команда не завершается за достаточно короткое время.
- UnableToSetCookieException: выбрасывается, когда драйверу не удается установить файл cookie.
- UnexpectedAlertPresentException: вызывается при появлении неожиданного предупреждения. Обычно возникает, когда ожидаемый модал блокирует форму webdriver, выполняя любые другие команды.
- UnexpectedTagNameException: выбрано, когда класс поддержки не получил ожидаемый веб-элемент.
- Исключение WebDriverException: исключение базового webdriver. Все исключения webdriver либо используют WebDriverException, либо InvalidStateException как родительский класс.
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow