我正在通过Ruby 1.9.2在Windows上使用Firefox 13和Watir-webdriver,并将之前在Watir中运行的一些代码移植到Watir-webdriver以与Firefox一起使用,我点击了一些奇怪的行为在各个网站上。
当我要求Watir点击某个按钮或链接时,即使正在重新加载页面,它似乎也无法识别该事件已被触发。
puts "Clicking button"
browser.button(:id,'search_button').click
puts "Button clicked"
当上面的脚本运行时,我看到第一个输出,但不是第二个 - 尽管在页面重新加载时发生了点击,但是就浏览器而言,脚本似乎继续运行,但第二次循环命中此操作,两个输出都不再显示 - 发生单击。
当我添加when_present.click时,点击发生,但是30秒后脚本超时,因为它仍在等待该线路上的元素被调用(点击已经发生浏览器,但看起来它不能识别它)
我已经尝试更新了宝石,删除了可能存在冲突的宝石,并尝试将Firefox版本从13更改为7但行为相同。
答案 0 :(得分:1)
禁用Firefox中默认启用的本机事件(在Windows上)
profile = Selenium::WebDriver::Firefox::Profile.new
profile.native_events = false
Watir::Browser.new WEB_DRIVER, :profile => profile
完整详情here