我正在尝试单击下拉列表中的元素(链接),该下拉列表仅在将鼠标悬停在元素上时才会出现。不幸的是,我无法提供指向发生问题的站点的链接,因为我们的 Live 站点上还没有可用的功能。有关此问题所涉及的 HTML 代码,请参见下文:
<li class="sub-menu">
<span class="label">Signed in as</span>
<span class="val">Xkeek Javed Wezacur</span>
<a href="#user-actions">Menu</a>
<ul id="user-actions">
<li>
<li>
<li>
<a href="/sign_out">Sign out</a>
</li>
</ul>
</li>
现在我正在尝试访问并单击代码:
<a>href="/sign_out">Sign out</a>
我尝试了各种解决方案,但每次都会出错。请参阅下面的内容,了解我的尝试和收到的错误:
@browser.li(:class, 'sub-menu').ul(:id, 'user-actions').link(:text, 'Sign out').click
元素无法滚动到视图中:https ://xxxuat.com/sign_out (Selenium::WebDriver::Error::MoveTargetOutOfBoundsError)
@browser.ul(:id, 'user-actions').link(:text, 'Sign out').click
元素无法滚动到视图中:https ://xxxuat.com/sign_out (Selenium::WebDriver::Error::MoveTargetOutOfBoundsError)
@browser.link(:text, 'Menu').link(:text, 'Sign out').click
无法定位元素,使用 {:text=>"Sign out", :tag_name=>"a"} (Watir::Exception::UnknownObjectException)
@browser.link(:text, 'Sign out').click
元素无法滚动到视图中:https ://xxxuat.com/sign_out (Selenium::WebDriver::Error::MoveTargetOutOfBoundsError)
我曾尝试使用 stackoverflow 和 Google 群组找到一些答案,如果我能指出正确的方向,我将不胜感激。谢谢你们。
环境:Mac OSX 10.7.5、Firefox 19.0.2、Ruby 1.9.3p194、watir-webdriver 0.6.2
我刚试过:
@browser.link(:text, 'Menu').fire_event('onmouseover'),
@browser.li(:class, 'sub-menu', :text, 'Sign out').link.click
我得到的错误是:
expected Hash or (:how, 'what'), got [:class, "sub-menu", :text, "Sign out"] (ArgumentError)。
现在我很困惑