Драйвер Selenium — обрабатывает окна браузера, открытые через JavaScript

#java #selenium #internet-explorer #selenium-iedriver

#java #selenium #internet-explorer #selenium-iedriver

Вопрос:

Вот наш обычный код создания экземпляра драйвера

 WebDriver driver =new InternetExplorerDriver();
driver.get("http://internal.com");
  

Допустим, что приведенное выше открывает экземпляр (окно) IE — Window 1. В этом случае у нас есть некоторый JS на internal.com ‘s index.html это открывает новое окно, скажем, Window 2. Проблема в том, что когда мы завершаем работу с драйвером, мы можем легко закрыть окно 1, но, похоже, у нас нет контроля над окном 2.

 driver.quit();
  

Существуют ли какие-либо чистые способы закрыть Window 2 и любые другие производные окна браузера в конце каждого тестового примера?

Комментарии:

1. Я бы подумал, что выход из драйвера закрыл бы все окна. Вы пробовали перебирать все дескрипторы окон и закрывать каждый из них перед выходом?

2. Попробуйте найти это конкретное окно с помощью вашего кода, чем активировать его и закрыть с помощью метода Close(). затем попробуйте использовать driver.quit(); чтобы закрыть другое окно. Ссылка: zyxware.com/articles/5552 /…