如何在Capybara中找到未命名的iframe

Tan*_*eam 2 html ruby iframe cucumber capybara

我试图访问的iframe是3个iframe深,并且模糊启动

<iframe frameborder="0" style="height: 100%; width: 100%;" src="javascript:void(0)"></iframe>
Run Code Online (Sandbox Code Playgroud)

没有ID,名称或价值.

我可以做...

within_frame(iframe)
Run Code Online (Sandbox Code Playgroud)

And*_*lov 9

Capybara :: Selenium :: Driver.within_frame传递frame_id给webdriver:

browser.switch_to.frame(frame_id)
Run Code Online (Sandbox Code Playgroud)

Webdriver的frame方法调用switchToFrame方法,该方法接受索引,名称或id

因此,要访问3个iframe深层iframe,您可以执行以下操作:

within_frame 0 do
  within_frame 0 do
    within_frame 0 do
      # do something
    end
  end
end
Run Code Online (Sandbox Code Playgroud)