附加窗口和等待的Watir webdriver

时间:2012-07-24 08:57:37

标签: facebook google-chrome webdriver watir

我正在尝试检测何时显示Facebook弹出窗口,然后填写Facebook登录表单。我已经尝试了attach方法,wait方法和sleep方法,但似乎只要我启动新页面,所有连接都会丢失:

 #this output is displayed
 puts "lets the game begingsx"
 $b.goto("javascript:gigya.services.socialize.plugins.login.providerClick('loginPluginDiv','facebook')")

 #this output is never displayed
 puts "lets start sleep"

 $b.window(:title,/Log In | Facebook/i).use do
   $b.text_field(:id => 'email').when_present.set("xyz@gmail.com")
 end

2 个答案:

答案 0 :(得分:0)

以下是如何使用新打开的/弹出窗口

@my_browser = Watir::Browser.new
@my_browser.goto "your first url"

当您弹出Facebook弹出窗口时,请执行以下操作以在弹出窗口中执行操作。我假设你现在是facebook popup上的标题

@my_browser.window(:title => "facebook login popup title").use do
  @my_browser.button(:id => "yout buttone id").click
end

我希望它会有所帮助

答案 1 :(得分:0)

问题是您在Facebook登录页面使用了错误的标题。页面标题位于html元素中。 所以使用这个构造

@browser.window(:title => 'Facebook').wait_until_present
@browser.window(:title => 'Facebook').use do

end

问候,卡洛。