【发布时间】:2012-05-03 04:20:48
【问题描述】:
我正在 ark.com 上对此进行测试..
以下代码非常适合带有 watir-webdriver 的 firefox,但分别在 google chrome 和 opera 浏览器中给我一个错误。
代码如下:
require "rubygems"
require "watir-webdriver"
b = Watir::Browser.new :ff
b.goto "http://www.ark.com"
# Signing in
7.times{b.link(:text, "Sign in").flash}
sleep 3
b.link(:text, "Sign in").click
sleep 3
# Popup
b.text_field(:name, "login_email").set "email@gmail.com"
b.send_keys :tab
b.text_field(:name, "login_password").set "password"
b.button(:value, "Sign in").click
puts b.title
如下更改代码会给我错误:
b = Watir::Browser.new :chrome
或
b = Watir::Browser.new :opera
我收到以下错误消息:
You may only interact with visible elements (Selenium::WebDriver::Error::ElementNotVisibleError)
我尝试了以下堆栈溢出建议,但无济于事How do I use Watir::Waiter::wait_until to force Chrome to wait?
另外,我的代码在 firefox 中可以完美运行,但在其他浏览器中却不行,为什么会出现这种情况? 任何帮助,将不胜感激。谢谢。
【问题讨论】:
-
它说什么元素不可见?当您尝试在其他 Stackoverflow 问题中找到的 .when_present 等方法时,您是否也会遇到不同的错误?
-
代码中的哪一行产生了错误?
标签: ruby automated-tests watir watir-webdriver