watir - 无法点击雅虎邮件删除按钮

标签 watir watir-webdriver

我是 Watir 的初学者,并尝试使用 webdriver 删除 yahoo 邮件

require "rubygems"
require "watir-webdriver"

br=Watir::Browser.new :ff
br.goto("https://login.yahoo.com/config/login_verify2?&.src=ym")
br.text_field(:id,'username').set("xxxx")
br.text_field(:id,'passwd').set("xxxx")
br.button(:id,'.save').click
sleep(5)
br.button(:value=>"Check Mail").click
br.checkbox(:title=>"Select or deselect all messages [Ctrl+A]").click
br.button(:id=>"yui_3_2_0_1_13307738172806292").click

点击删除按钮不起作用 br.button(:id=>"yui_3_2_0_1_13307738172806292").click

请求帮助。提前致谢

html代码如下

<div class="list-view-footer" role="toolbar" id="yui_3_2_0_1_13307738172806297">
<div id="yui_3_2_0_1_13307738172806296" class="commontasks shaded">
<div id="pagetoolbar" class="">
<span id="yui_3_2_0_1_13307738172806293" class="btn left right multimsg">
<a id="yui_3_2_0_1_13307738172806292" data-action="delete" title="Delete selected emails [Delete]" href="#" role="button">Delete</a>
</span>
<span class="btn left onemsg" id="yui_3_2_0_1_13307738172806444">
<span id="btn-reply" class="btn right menu onemsg" data-action="menu">
<span class="btn left onemsg">
<span class="btn multimsg">
<span id="btn-move" class="btn menu right multimsg" data-action="menu">
<span id="btn-ml-preview" class="btn left right menu" data-action="menu">
<span id="btn-actions" class="btn left right menu" data-action="menu">
<div class="rht pagination shaded" role="presentation"></div>
</div>
</div>

最佳答案

改用链接。

br.link(:id=>"yui_3_2_0_1_13307738172806292").click

现在,请提供一些主动提供的建议,因为您非常热衷于正确执行此操作(我很欣赏新手)。首先,除非绝对必要,否则我不会使用任何 sleep 。相反,等待您正在寻找的东西:

br.button(:value=>"Check Mail").wait_until_present

接下来,要小心使用特定于平台的标识符。在这种情况下,我的系统是 Mac,因此“选择或取消选择所有消息 [Ctrl+A]”在我的系统上是“选择或取消选择所有消息 [Cmd+A]”。这不起作用。另一种方法是使用部分字符串:

br.checkbox(:title=>/Select or deselect all messages/).click

最好选择正确的标识符并尽可能保留它们。在这里我对两者都使用标题。如果您测试未本地化的系统,标题可能是一个糟糕的选择。

br.checkbox(:title=>/Select or deselect all messages/).click
br.button(:title=>/Delete selected emails/).click

祝你好运。

关于watir - 无法点击雅虎邮件删除按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9546516/

相关文章:

ruby - 如何在 watir webdriver 中按住控制键

ruby - 在 ruby​​ 单元测试中访问全局变量

ruby - 集成 watir-webdriver 和 browsermob/proxy 以及 webdriver-user-agent

ruby - 如何使用 watir-webdriver 从 text_area 调用 id?

javascript - Watir 不触发 Jquery 事件处理程序

java - JRuby:启动浏览器时 Watir 挂起

ruby - 使用 Watir Webdriver 滚动 Firefox

ruby 网络驱动程序 : how to catch key pressed while the script is running?

ruby - firewatir 的问题

ruby - 停止加载页面 watir-webdriver