Watir点击iFrame内的事件?

时间:2015-04-23 10:10:49

标签: ruby-on-rails iframe watir watir-webdriver

我已经在我的rails应用程序中安装了watir-webdriver,我想立即显示该网站的预览,我想在同一页面上显示watir点击事件而不是在新窗口/选项卡中,这里我要显示索引页面上的iframe内的实时预览,我尝试了以下内容:

应用程序/模型/ preview.rb

def self.live_preview
    browser = Watir::Browser.new :firefox, profile: 'MR'
    browser.goto "http://example.com"
    browser.text_field(id: 'email').set('test@gmail.com')
    browser.text_field(id: 'password').set('password')
    browser.button(name: 'commit').click
    browser.button(name: 'learn_more').click
  end

应用程序/视图/ watir.rb

<%= Preview.live_preview %>

应用程序/视图/ index.html.erb

<iframe id="preview" src="/watir"></iframe>

当索引页面加载时,它会打开新选项卡,然后执行所有事件,但我想要在同一页面中

我希望类似于watir-classic mentioned here在ubuntu上的firefox中运行

1 个答案:

答案 0 :(得分:0)

是按照以下方式,您可以点击iframe中的链接

require 'watir-webdriver'
b = Watir::Browser.new
b.goto "index_page"    
b.frame(:id => 'top_right').link(:index => 0).click