1

某些链接需要在 Web 浏览器的新选项卡或新窗口中打开。当我在命令中使用 url 作为定位器时,我无法选择新选项卡Select Window

环境:

selenium2 库,selenium2,机器人框架,RIDE

文档:

title   Select Window  title=My Document    Matches by window title
name    Select Window  name=${name}     Matches by window javascript name
url     Select Window  url=http://google.com    Matches by window's current URL

试过: 它适用于:

 Select Window title=mytitle

我失败了:

 Select Window url=http://myurl.com/index
ValueError: Unable to locate window with URL

我不知道如何获取窗口的名称,所以我尝试使用名称作为定位器。但是我想用url,不知道怎么用。有人有类似的经历吗?

4

3 回答 3

0

由于使用浏览器中存在的未知标题,您会收到值错误。因此,在使用“选择窗口”之前,您需要使用命令“获取窗口标题”获取窗口标题的长度,然后很容易在日志文件中检查值/标题是否存在。

在ride中遵循如下代码格式:

${Length}|Get window titles||||||
Select Window|       title of required page 
于 2014-10-28T09:38:04.313 回答
0

我正在使用 Chrome 网络驱动程序 2.10 和 Chrome 35。似乎 Chrome 网络驱动程序不支持通过 url 选择窗口,并且我得到了同样的错误“无法找到带有 URL 的窗口”。但是按标题选择窗口有效。

您可以使用 javascript 来获取标题/名称/url:

document.title
window.name
window.location.href

顺便说一句,Chrome 似乎不再将“Main”或“main”作为主浏览器窗口。因此,在 Chrome 中使用零参数的“选择窗口”将失败。

于 2014-06-06T03:09:13.707 回答
0

您可以使用通过单击 CTRL+U 找到的标题并复制它,您当然会在“标题”标签之间找到它,例如 usinf firefox:

Set Test Variable ${link} google.com Open browser ${link} ff Select Window title=Google

于 2016-07-25T09:36:24.753 回答