Watir:当网页元素出现时总是等待

Watir: Always wait when webpage element present

Web 应用程序在用户操作后始终使用此 div。我的测试脚本有这一行。逐字逐句,无处不在。

@browser.div(:id => 'loading-indicator').wait_while_present

在任何地方都明确包含这一行是可以的,但是丑陋且重复。

在加载指示器之后使用 wait_until_present下一个 元素(“foo”)有时会起作用。但是,在某些情况下foo和loading indicator同时存在,但是foo不是visible?直到loading indicator消失。

有没有办法(也许在 env.rb 中)向 watir-webdriver 指示它应该总是 wait_while 这个元素存在?

如果你想在每次点击和页面后检查它 load/reload 你可以将它添加到 After Hook

browser.after_hooks.add do |b| 
  b.div(id: 'loading-indicator').wait_while_present
end