Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Capybara如何在没有id的页面中为唯一的iframe使用in_frame_Ruby On Rails_Iframe_Cucumber_Capybara - Fatal编程技术网

Ruby on rails Capybara如何在没有id的页面中为唯一的iframe使用in_frame

Ruby on rails Capybara如何在没有id的页面中为唯一的iframe使用in_frame,ruby-on-rails,iframe,cucumber,capybara,Ruby On Rails,Iframe,Cucumber,Capybara,在我需要用Cucumber和Capybara测试的页面中有一个,iframe没有class或id属性,但它是DOM上唯一的iframe。如何使用in_framecapybara方法?使用find获取元素并将其传递给in_frame方法 iframe = find('iframe') within_frame(iframe) do # expect something here end 如果您使用的是最新版本的Capybara,那么如果页面上只有一个iframe,那么页面内的locator参数

在我需要用Cucumber和Capybara测试的页面中有一个,iframe没有class或id属性,但它是DOM上唯一的iframe。如何使用
in_frame
capybara方法?

使用
find
获取元素并将其传递给
in_frame
方法

iframe = find('iframe')
within_frame(iframe) do
 # expect something here
end

如果您使用的是最新版本的Capybara,那么如果页面上只有一个iframe,那么页面内
的locator参数是可选的

within_frame do
  # blah blah
end

这是一个很好的进步!我一直在使用旧版本,但很高兴知道。@juliangonzalez取决于您使用的版本有多旧,您可能只是能够通过
nil
作为定位器,使其默认为在\u frame nil do中查找任何帧
。。。结束
或按帧索引
在帧0内结束。。。结束