我正在尝试使用在新标签页中打开的capybara/poltergeist单击链接来打开一个链接。

我似乎无法正常工作。

@session.find(<link>).click

似乎停留在同一页面上,
click_link "<link>"

@session.driver.window_handles

无论我在做什么,似乎只给了我一个窗口。

如何获得该链接以在新标签页中打开?

关于什么可行或不可行(With Capybara, how do I switch to the new window for links with "_blank" targets?),似乎造成了相当大的困惑。

希望有人解决了这个问题……似乎无法解决我的问题。

好的。通过更新到最新版本的poltergeist(1.6.0),我们取得了一些进展。

但是现在我有两个窗口,但不知道如何在两个窗口之间切换。
@session.windows

给我

[Window @ handle =“0”,Window @ handle =“1”]
(略微修改,因为有点有趣)。


@session.switch_to_window(1)

结果是
NoMethodError: undefined method `handle' for "1":String

最佳答案

正确,截至2014年2月5日和poltergeist v1.6,您可以执行此操作,因为...

@session.click_on "link_with_target _blank"

@session.switch_to_window(@session.windows.last)
#Do whatever you're doing
@session.current_window.close
@session.switch_to_window(@session.windows.first)

希望能为某人清除一切...

10-08 04:37