假设我是猴子修补类中的方法,我怎么能从覆盖方法调用重写方法?就像有点像super
例如
class Foo
def bar()
"Hello"
end
end
class Foo
def bar()
super() + " World"
end
end
>> Foo.new.bar == "Hello World"
Run Code Online (Sandbox Code Playgroud) 我有以下代码
browser.link(:text => 'Generate Report').click
browser.radio(:value => 'byTotalValue').wait_until_present(180)
Run Code Online (Sandbox Code Playgroud)
请求生成报告,然后通过在报告页面上查找元素来等待报告.报告最多可能需要2分钟才能显示.
发生的事情是Timeout :: 60秒后从click方法引发错误.我怀疑Watir-Webdriver在click方法中实现了某种形式的等待页面加载,但我没有看到调整值的方法.
任何帮助理解这一点将不胜感激.
我正在编写一个自动测试程序,它将测试一些有时加载某些AJAX调用的Web程序.例如,用户将点击"查询",这将导致HTML"加载"叠加,持续时间为15到90秒.搜索完成后,它将使用结果更新同一页面上的表.
所以显然我可以单独增加等待时间,如下:
browser.td(:id => 'someId').when_present.some_action #=> will wait 30 seconds
browser.td(:id => 'someId').when_present(90).some_action #=> will wait *90* seconds
Run Code Online (Sandbox Code Playgroud)
但有没有办法修改(在我的情况下增加)时间,所以Watir-Webdriver 总是等待90秒,.when_present如下所示:
browser.some_default = 90
browser.td(:id => 'someId').when_present.some_action #=> will wait *90* seconds
Run Code Online (Sandbox Code Playgroud)