Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 确保在使用watir等待页面加载时设置了超时_Ruby_Watir_Watir Webdriver - Fatal编程技术网

Ruby 确保在使用watir等待页面加载时设置了超时

Ruby 确保在使用watir等待页面加载时设置了超时,ruby,watir,watir-webdriver,Ruby,Watir,Watir Webdriver,在watir中,我想使用browser.wait()来确保我一直在等待页面加载。但是,如果页面永远不会加载,或者只是需要很长时间,该怎么办。我想设置一个超时。是否使用类似于browser.wait(8),指定超时的秒数来执行此操作?您可以在wait语句后的括号中指定超时值: Watir::Wait.until(60) { browser.text.include? 'Hello' } Watir::Wait.until(60) { browser.div(:id => "mainDiv")

在watir中,我想使用
browser.wait()
来确保我一直在等待页面加载。但是,如果页面永远不会加载,或者只是需要很长时间,该怎么办。我想设置一个超时。是否使用类似于
browser.wait(8)
,指定超时的秒数来执行此操作?

您可以在wait语句后的括号中指定超时值:

Watir::Wait.until(60) { browser.text.include? 'Hello' }
Watir::Wait.until(60) { browser.div(:id => "mainDiv").exists? }

作为更新,Watir现在不赞成使用超时值,而赞成使用超时关键字,如下所示:


Watir::等待。直到(超时:60){browser.text.include?'Hello'}

是的。我在这里签出源代码:超时是以秒为单位的吗?docs not clear是的,超时以秒为单位。有没有办法将超时设置为永久性的?我希望更改一个一次性断言,在该断言中,它将等待文本change@kmancusi这可能会导致一个非常不稳定的测试,所以我不推荐它,但是超时值默认为nil,因此您可以没有超时,或者显式地将其设置为nil,以便于代码检查。点击此处了解更多信息: