【发布时间】:2014-05-30 23:44:04
【问题描述】:
这个页面发生了一些奇怪的事情:
require "watir-webdriver"
b = Watir::Browser.new
b.goto "http://mideastunes.com/"
b.div(class: "feat-container").element(css: "a span").present?
=> true
b.div(class: "feat-container").element(css: "a span").click
Selenium::WebDriver::Error::MoveTargetOutOfBoundsError: Element cannot be scrolled into view:[object HTMLSpanElement]
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/response.rb:52:in `assert_ok'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/response.rb:15:in `initialize'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/http/common.rb:59:in `new'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/http/common.rb:59:in `create_response'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/http/default.rb:64:in `request'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/http/common.rb:40:in `call'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/bridge.rb:590:in `raw_execute'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/bridge.rb:568:in `execute'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/remote/bridge.rb:350:in `clickElement'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/selenium-webdriver-2.19.0/lib/selenium/webdriver/common/element.rb:34:in `click'
from /Users/zeljko/.rvm/gems/ruby-1.9.2-p290@gretel/gems/watir-webdriver-0.5.3/lib/watir-webdriver/elements/element.rb:107:in `click'
from (irb):48
from /Users/zeljko/.rvm/rubies/ruby-1.9.2-p290/bin/irb:16:in `<main>'
我正在尝试点击这个跨度:
<span class="feature-prev-icon icon"></span>
我可以用这个点击它:
b.span(class: "feature-prev-icon icon").click
但我想用这个来点击它:
b.div(class: "feat-container").element(css: "a span").click
环境:Mac OS X 10.7.3、Firefox 10.0.1、ruby 1.9.2p290、selenium-webdriver 2.19.0、watir-webdriver 0.5.3
【问题讨论】:
-
我刚刚在 Windows Vista Home Premium 上的 FF10 上得到了相同的结果。这是一个我很薄弱的领域,但我会努力了解更多。
-
问题在 Gentoo Linux, Firefox 10.0, ruby 1.9.2p290, selenium-webdriver 2.19.0, watir-webdriver 0.5.3 上可重现但是,只要同样的错误,它就不是 watir-webdriver 问题发生在普通 selenium-webdriver
b.find_element(:css => "div.feat-container").find_element(:css => "a span").click -
我的运行但它点击了某个地方的播放按钮。 watir-webdriver 0.3.9, selenium-webdriver 2.12.1 in Windows 7, Firefox 8. 所以我有点落后了。
标签: watir watir-webdriver