Обработка оповещений/всплывающих окон Javascript:
В этом посте мы увидим, как обрабатывать оповещения/попусы Javascript. Оповещения — это, по сути, всплывающие окна, которые отвлекают ваше внимание от текущего браузера и заставляют прочитать предупреждающее сообщение. Вам необходимо выполнить некоторые действия, например принять или закрыть окно предупреждения, чтобы возобновить выполнение задачи в браузере.
Чтобы обрабатывать всплывающие окна с оповещениями, нам нужно переключиться на окно оповещения и вызвать методы API Selenium WebDriver Alert.< p>Существует два типа оповещений.
- На основе Windows
- Веб-интерфейс/На основе браузера
Здесь, в этом посте, я ограничиваюсь оповещениями Java Script (также известными как браузер). /Веб-оповещения).
Для ОС Windows перейдите по ссылке ниже.
Как обрабатывать всплывающие окна в Windows с помощью AutoIT (СКОРО ОБНОВИТСЯ)
Для обработки оповещений на основе браузера (всплывающих веб-оповещений) мы используем Alert интерфейс. Alert Интерфейс предоставляет некоторые методы для обработки всплывающих окон.
При запуске сценария WebDriver элемент управления драйвером будет находиться в браузере даже после создания предупреждения, что означает, что контроль водителя будет находиться за всплывающим предупреждением. Чтобы переключить элемент управления на всплывающее предупреждение, мы используем следующую команду:driver.switchTo().alert();
Однажды мы переключаем управление с браузера на окно оповещения. Мы можем использовать Alert методы интерфейса для выполнения необходимых действий, таких как принятие оповещения, отклонение оповещения, получение текста из окна оповещения, написание текста в окне оповещения. и т. д.,
Давайте посмотрим методы интерфейса оповещений.
Нам нужно импортировать пакет org.openqa.selenium.Alert для обработки оповещения в Selenium.
Чтобы получить дескриптор открытого оповещения:
Alert alert = driver.switchTo().alert();
Чтобы нажать кнопку «ОК»:alert.accept();
Чтобы нажать кнопку «Отмена».
alert.dismiss()
Чтобы получить текст, который присутствует в оповещении.alert.getText();
Чтобы ввести текст в поле оповещенияalert.sendkeys(String stringToSend);
Для аутентификации путем передачи учетных данныхalert.authenticateUsing(Учетные данные учетных данных)
Пример программы:
пакет программного обеспечения TestingMaterial; импортировать org.openqa.selenium.Alert; импортировать org.openqa.selenium.By; импортировать org.openqa.selenium.WebDriver; импортировать org.openqa.selenium.chrome.ChromeDriver; импортировать org.testng.annotations.Test; public class AlertInterface { @Test public void alertWindow() выдает исключение { System.setProperty("webdriver.chrome.driver", "D:\Selenium Environment\Drivers\chromedriver.exe&# 34;); Драйвер WebDriver = новый ChromeDriver(); driver.get("http://softwaretestingplace.blogspot.com/2017/03/javascript-alert-test-page.html"); driver.findElement(By.xpath("//*[@id='content']/button")).click(); Thread.sleep(3000); Предупреждение = driver.switchTo().alert(); Строковая печать = alert.getText(); System.out.println(печать); оповещение.принять(); Thread.sleep(3000); driver.findElement(By.xpath("//*[@id='content']/button")).click(); Thread.sleep(3000); оповещение.отклонить(); драйвер.закрыть(); } }
Если вы не являетесь постоянным читателем моего блога, я настоятельно рекомендую вам подписаться на бесплатную рассылку новостей по электронной почте, используя ссылку ниже.
TAG: qa