В настоящее время я автоматизирую приложение на платформе IBM Cognos с использованием селена + огурец + Internet Explorer и сталкивается с некоторыми проблемами. Мне нужна экспертная помощь этой группы по этим вопросам.Selenium - getWindowHandles() возвращает значение 1 независимо от числа открытых браузеров
Описание проблемы - при нажатии на ссылку на странице открывается новый браузер. В идеале метод getWindowHandles() возвращает правильный счет браузера, открытый WebDriver. Мы переключаемся на второй браузер с использованием свойства дескриптора окна, дальнейшие действия будут выполняться во втором браузере. GetWindowHandles возвращает значение 1 независимо от количества браузеров, открытых WebDriver. Я попытался следующие методы -
- Нажмите кнопку() на ссылку & пытавшихся getWindowHandles()
- Keys.Enter на ссылку & getWindowHandles()
- SendKeys («\ 0») по ссылке & getWindowHandles()
- MouseHover по ссылке, нажмите на ссылку & getWindowHandles
- Двойной щелчок по ссылке & getWindowHandles
- Открыт Новая вкладка с помощью SendKeys (keys.control +»T»), переходите к URL & getWindowHandles()
- Открыт новое окно браузера с помощью SendKeys (keys.control +»N»), переходите к URL & getWindowHandles()
среда используется - Selenium WebDriver - 2.39.0 IEDriverServer.exe - Win32_2.39.0 Windows 7 Internet Explorer 8.0
Примечание - она работает отлично на Firefox, этот вопрос Хаппа только для IE.
Вы пытались подождать несколько секунд, прежде чем получать ручки окна? Возможно, что getWindowHandles вызывается еще до того, как создается окно браузера. – Buddha
Да, я пробовал с добавлением wait, no luck – Buddha