У меня проблема с тестами на селен. У меня есть сценарий, который выполняет некоторые действия, а затем закрывает браузер. Когда я закрываю браузер, появляется всплывающее сообщение (снимок экрана прилагается), которое мне нужно принять, чтобы браузер закрылся. Моя проблема в том, что я пробовал много разных идей, но ни одна из них не сработала. от switch.accept до dismiss () до javascriptExecutor не повезло. Это метод, который я использую, чтобы закрыть браузер. после вызова этого метода я получаю всплывающее окно, которое мне нужно закрыть.
public static void closeDriver() throws InterruptedException{
if (driver!=null){
driver.quit();
driver=null;
log.info("The Browser was closed successfully");
}
Я не уверен, как прикрепить снимок экрана после публикации, но вот ссылка на точно такое же всплывающее окно, как у меня: google.com/…:




Ваш сценарий немного сложен, так как после закрытия браузера вы хотите взаимодействовать с всплывающим окном.
Ну ваш код:
if (driver!=null){
driver.quit();
driver=null;
log.info("The Browser was closed successfully");
}
ваш экземпляр драйвера будет закрыт после строки driver.quit();.
driver=null;
log.info("The Browser was closed successfully");
вообще не должно выполняться.
Но если для тестирования вы открыли несколько экземпляров браузера, вы можете переключиться на driver.close();, а затем попытаться обработать предупреждение.
Да точно, проблема в том, что после закрытия браузера мне нужно взаимодействовать со всплывающим окном, и уже слишком поздно, потому что я вызвал метод driver.quit (). Даже если я не установил driver = null, он все равно не сработает, потому что я уже вызвал этот метод закрытия. Кроме того, driver.close () не работает. Спасибо за ответ, я ценю это.
У меня есть обходной путь, используя файл .vbs, чтобы убить процесс браузера вместо driver.close (), но я не хочу его использовать. Я хочу посмотреть, есть ли для него какое-либо решение
Это всплывающее окно нельзя обработать ни одной из команд селена, потому что его нельзя проверить. Для этого вам нужно будет использовать скрипт AutoIt. См. Ссылку ниже, которая предназначена для всплывающего окна проверки подлинности в браузере.
Я не вижу прикрепленных скриншотов. Не могли бы вы прикрепить его снова?