Google chrome 由于webdriver不支持附加,是否有替代watir::ie.attach的方法用于watir webdriver

Google chrome 由于webdriver不支持附加,是否有替代watir::ie.attach的方法用于watir webdriver,google-chrome,watir,webdriver,browser-automation,watir-webdriver,Google Chrome,Watir,Webdriver,Browser Automation,Watir Webdriver,我有一个网站,它只能在支持Webkit的浏览器(谷歌浏览器、Safari)中呈现。我使用谷歌浏览器,因为我在Windows7上 我使用watirwebdriver来实现同样的自动化 问题:当我单击浏览器窗口上的按钮时,is将启动另一个窗口,单击后的内容将在新的浏览器窗口中呈现。我需要一种方法来识别这个新的浏览器窗口,以便能够继续我的测试。我一直在各种论坛上阅读,但没有得到任何确定的答案/解决方案 问:由于watir webdriver上不支持附加,是否有替代watir::ie.attach的方法

我有一个网站,它只能在支持Webkit的浏览器(谷歌浏览器、Safari)中呈现。我使用谷歌浏览器,因为我在Windows7上

我使用watirwebdriver来实现同样的自动化

问题:当我单击浏览器窗口上的按钮时,is将启动另一个窗口,单击后的内容将在新的浏览器窗口中呈现。我需要一种方法来识别这个新的浏览器窗口,以便能够继续我的测试。我一直在各种论坛上阅读,但没有得到任何确定的答案/解决方案

问:由于watir webdriver上不支持附加,是否有替代watir::ie.attach的方法用于watir webdriver

示例代码:

require "rubygems"

require "watir-webdriver"


require "selenium-webdriver"

b = Watir::Browser.new(:chrome)

website = "http://xyz.com"

#a new browser is launched and the website is opened

b.goto(website)

#this opens a new browser window

b.link(:xpath,"/html/body/div/ul/li/a").click

#there is a button called "MAP" on the new browser window

b.link(:id,"btn_MAP")

#this gives an error, unknown link

您是否尝试过将网站设置为浏览器的默认主页

这可能会阻止您执行附加操作

“窗口”方法是ie.attach的替代方法。Webdriver可以使用window方法处理自己打开的窗口

b.link(:href,/server\/getPage/).click
b.window(:url,/server\/getPage/i).use do
  b.link(:id,"btn_MAP").click
end
您可以在window方法块中处理弹出的窗口。若要继续处理弹出窗口,请使用它而不使用块,如window(:url,/foobar/)。使用

另见:
@Yutaka:非常感谢您的帮助。它让我使用了下面的类似方法,而且效果很好

b、 链接(:xpath,“/html/body/div/ul/li/a”)。单击

c=b.window(:url,“http:\/\/server\/getPage\/67\/1354”)

c、 使用


b、 链接(:id,“btn_MAP”)。点击

实际上这是一个手机API,主要集中在iPhone和Android上,我们正在尝试在浏览器上呈现它,这样我们就不局限于在设备本身或模拟器上进行测试。啊,好的。。在我发表评论后,我想知道是否是这样的。。它将WinPhone排除在外,但在移动市场上,这是一个比我和a更小的细分市场,因此我可以看到这种逻辑。我在上面的解决方案中得到以下错误://watir-webdriver-0.2.2/lib/watir-webdriver/elements/element.rb:241:in
assert\u-exists::无法定位元素,使用{:tag\u name=>“a”,:id=>“btn\u-MAP”}(Watir::Exception::UnknownObjectException)从//watir-webdriver-0.2.2/lib/watir-webdriver/elements/element.rb:69:in
点击'from ft_02.rb:29从//selenium-webdriver-0.1.4/lib/selenium/webdriver/common/target_locator.rb:37:in
窗口'从//watir-webdriver-0.2.2/lib/watir-webdriver/window切换。rb:99:in
使用'ft_02.rb:28@raat你能把HTM的零件装上吗L要处理的源代码和弹出的窗口url?我支持..编辑您的问题并添加您试图用于实现.window的新代码(how,what).use方法,这使人们更容易在(主页)第一屏
  • “>
HTML在第二个屏幕上……
  • MAP