Основные исключения WebDriwer
Данный раздел относится исключительно к автоматизированному тестированию, которое предполагает знание одного из выскоуровневых современных языков программирования. И в рамках нашего курса дается только в ознакомительном формате. Данный список вам может пригодится при прохождении практического задания уровня. Далее приведем список наиболее част встречающихся исключения Webdriwer:
-
ElementNotVisibleException — возникновение этого исключения означает, что хоть элемент и присутствует в DOM, он невидим и поэтому взаимодействовать с ним невозможно.
-
IllegalLocatorException — возникает когда By не может обработать переданные ему аргументы. Наиболее распространенный случай возникновения — это использование составного имени класса в By.className().
-
StaleElementReferenceException — возникает когда ссылка на элемент, к которому идет обращение, больше не действительна.
-
MoveTargetOutOfBoundsException — вызывается, если в метод moveToElement(WebElement toElement) передан элемент, который находится за пределами экрана, а так же в некоторых случаях когда драйвер не может попасть по движущемуся элементу (например, когда страница находится в процессе скролинга (jquery) — стоит дождаться его завершения и только после этого обращаться к элементам)
-
SessionNotCreatedException — это исключение означает, что сессия не может быть создана. Генерируется при использовании ‘requiredCapabilities’ для удаленного запуска, если браузер с «требуемыми» свойствами не найден.
-
TimeoutException — вызывается, когда команда не завершается в достаточный промежуток времени. Промежуток указывается параметром функции, либо является установленным по умолчанию.
-
UnhandledAlertException — возникает при появлении неожиданных модальных диалоговых окон.
-
UnsupportedCommandException — исключение означает, что команда, используемая удаленным вебдрайвером, не поддерживается.
-
InvalidCookieDomainException — вызывается при попытке добавить cookie для домена, отличающегося от текущего.
-
UnableToSetCookieException — генерируется когда драйвер не может по каким либо причинам установить cookie.
Исключения группы «Not Found»
-
NoAlertPresentException — генерируется при попытке передать управление диалоговому окну, которого в данный момент нет.
-
NoSuchElementException — вызывается методом findElement(By by), если элемент с заданным селектором не найден на странице.
-
InvalidSelectorException — исключение генерируется методом findElement(By by)когда заданный селектор поиска не возвращает WebElement. Сейчас это исключение возникает только при использовании xpath — когда в xpath выражении есть синтаксические ошибки или выражение не указывает на WebElement (например, «count(.//span)»).
-
NoSuchFrameException — возникает во время работы методов WebDriver.switchTo().frame(int frameIndex) и WebDriver.switchTo().frame(String frameName), если фрейм с заданным параметром не найден. Подробнее про работу с фреймами написано в этой статье.
-
NoSuchWindowException — возникает при отсутствии окна с заданным именем (WebDriver.switchTo().window(String windowName)). Статьи про работу с окнами: