Selenium2Library;无法按名称或网址选择新窗口[标识符和标题相同]

时间:2017-03-27 11:23:58

标签: internet-explorer robotframework selenium2library

单击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:无法找到包含句柄或名称或标题或网址的窗口' selenium_main_app_window'

任何人都可以帮助我克服这个问题,我对这个问题很感兴趣。

1 个答案:

答案 0 :(得分:1)

电子应用程序出现了相同的问题(松弛)。关于您的问题,为什么它不能与窗口名称(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)