如下是执行ruby脚本报错TimeoutError,请问该怎么改?

脚本:
require "watir"
browser = Watir::Browser.new :ie
browser.bring_to_front
browser.maximize
browser.goto url
browser.span(:text=>"cas").wait_until_present
browser.span(:text=>"cas").when_present.click

错误: C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.6.0/lib/watir-classic/wait.r
b:29:in `until': timed out after 60 seconds (Watir::Wait::TimeoutError)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/watir-classic-3.6.0/lib/watir-c
lassic/element_extensions.rb:63:in `wait_until_present'
from nwmtest.rb:26:in `<main>'

婷婷同学_
浏览 73回答 1
1回答

拉风的咖菲猫

因为这个元素在60秒内一直没有展现出来吧,所以报了超时,贴下这个方法的源码:## Waits until the element is present.## @example# browser.button(:id => 'foo').wait_until_present## @param [Fixnum] timeout seconds to wait before timing out## @see Watir::Wait# @see Watir::Element#present?#def wait_until_present(timeout = 30)message = "waiting for #{selector_string} to become present"Watir::Wait.until(timeout, message) { present? }enddef until(timeout = 30, message = nil, &block)end_time = ::Time.now + timeoutuntil ::Time.now > end_timeresult = yield(self)return result if resultsleep INTERVALendraise TimeoutError, message_for(timeout, message)end希望对你有帮助
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Ruby