Как закрыть всплывающие окна в Selenium? - PullRequest
0 голосов
/ 06 июня 2019

Я делаю тест с появлением java и всплывающих окон (реклама), и я не знаю, как их закрыть, чтобы продолжить мой тест. Я должен нажать на кнопку, но я переключаю фокус на окно. URL-адрес www.orbitz.com Пожалуйста, помогите!

Orbitz

1 Ответ

0 голосов
/ 06 июня 2019

Java-решение:

//switch to opened tab
ArrayList<String> tabs_windows = new ArrayList<String> (driver.getWindowHandles());
driver.switchTo().window(tabs_windows.get(1));
//close current tab and switch driver back to original
((JavascriptExecutor)driver).executeScript("close();");
for (String winHandle : driver.getWindowHandles()) {
driver.switchTo().window(winHandle); 
 }

Я не проверял это некоторое время, но в разных браузерах getWindowHandles () использовал для возврата разных порядков для вкладок.Не уверен, что вы можете считать 0 первой вкладкой для всех браузеров.Измените индекс соответствующим образом или сохраните текущий дескриптор перед всплывающим окном и закройте все, что не соответствует этому.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...