【问题标题】:How do I use Watir::Waiter::wait_until to force Firefox to wait?如何使用 Watir::Waiter::wait_until 强制 Firefox 等待?
【发布时间】:2011-10-06 21:22:33
【问题描述】:

我有一些按钮在添加用户时会被禁用。
我需要做的是让 firewatir wait_until 存在某些东西。
我现在正在尝试使用它:

count = 10
while count > 0
browser.button(:name, "_eventId_addEmployee").click
Watir::Wait.wait_until_present {text.exist? newHireUsername}
end
count -= 1
end

由于某种原因,我无法让 wait_until 方法正常工作。

提前致谢!

【问题讨论】:

    标签: ruby watir firewatir automated-tests


    【解决方案1】:

    我通常会这样做,

    browser.element_type(:id, "xxx").wait_until_present

    【讨论】:

    • 您将如何等待文本出现?
    • 文本是否包含在 div、span 或段落标签中?
    • 文本在 DataTable 中,在 div 中。
    • 你能发布一些示例 HTML 吗?
    • 等到出现一些文本:browser.wait_until { browser.element(:id => 'xx').text.include? 'this_text'}
    【解决方案2】:

    我没有使用wait_until_present 选项,而是使用了一个直到循环来等待文本出现。
    绕过尝试使用它,因此它不符合我原来问题的答案,但希望它在这里供其他人使用。

    【讨论】:

    • wait_until_present 功能是为了消除对此类 hack 的需求。 newHireUserName 可能填充在 div、span、只读 text_field 或段落字段

      中。如果您修改为:browser.element_type(:value => newHireUserName)

      ,Alastair 的解决方案几乎适用于所有这些人
    猜你喜欢
    • 2011-05-20
    • 2018-05-04
    • 1970-01-01
    • 2012-05-11
    • 1970-01-01
    • 1970-01-01
    • 2023-01-30
    • 1970-01-01
    • 2012-04-09
    相关资源
    最近更新 更多