Selenium2Library; Невозможно выбрать новое окно по имени или URL-адресу [идентификаторы и заголовки совпадают]
Я не могу выбрать новое окно, которое открывается после нажатия кнопки в IE11. Я пробовал с именем окна, идентификатором окна и заголовками, но ни один из них не работает, но он работал сразу.
Select PPM Login Window
Click Element //*[@id='myNewWindow']
Sleep 15s
@{windows}= Get Window Names
@{windId}= Get Window Identifiers
@{winTitles}= Get Window Titles
: FOR ${winHandle} IN @{winTitles}
\ Select Window ${winHandle}
\ Sleep 5s
\ ${status}= Run Keyword And Return Status Page Should Contain Element name=login_name
\ Exit For Loop If '${status}'=='True'
Вывод списков:
@{windows} = [ selenium_main_app_window | undefined ]
@{windId} = [ undefined | undefined ]
@{winTitle}= [ABCD | ABCD]
Ошибка: ValueError: Невозможно найти окно с дескриптором, именем, заголовком или URL-адресом "selenium_main_app_window"
Может кто-нибудь помочь мне преодолеть эту проблему, я застрял на этой проблеме.
0 ответов
У меня такая же проблема с электронным приложением (слабина). С вашим вопросом, почему он не работает с именем окна (selenium_main_app_window), потому что это имя неверно, это просто жесткий код в selenium2library, как показано ниже:
def get_window_names(self):
"""Returns and logs names of all windows known to the browser."""
values = self._window_manager.get_window_names(self._current_browser())
# for backward compatibility, since Selenium 1 would always
# return this constant value for the main window
if len(values) and values[0] == 'undefined':
values[0] = 'selenium_main_app_window'
return self._log_list(values)