我正在尝试使用capybara / poltergeist点击它来打开一个链接,它会在新标签中打开.
我似乎无法让它工作.
@session.find(<link>).click
似乎只是停留在同一页面上
click_link "<link>" @session.driver.window_handles
无论我在做什么,似乎只给我一个窗口.
似乎是关于什么有效或不是la(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)
希望为某人清除事情……