簡體   English   中英

wait_until塊給出超時錯誤

[英]wait_until block is giving time out error

這是對我來說失敗的代碼。

link(:continue, :text => 'Continue Shopping')

def verify_cart
    wait_until(60) do
      continue_element.visible?
    end
  end

為了使其正常工作,我在這里嘗試了一些解決方案: 在使用Watir的Rails應用程序中始終 出現錯誤(Watir :: Wait :: TimeoutError)Timeout :: Error 不一致,但沒有一個對我有用

我也嘗試過增加時間。

然后,我嘗試通過將at implicit wait從3秒增加到20秒,而不是僅使用.visible?來代替使用wait_until.visible? 而且有效。

link(:continue, :text => 'Continue Shopping')

continue_element.visible?

 #def verify_cart
 #   wait_until(60) do
 #     continue_element.visible?
 #   end
 # end 

現在的問題是元素何時存在,為什么wait_until繼續失敗?

continue_element.visible? 

不會引發錯誤,而只是返回一個布爾值。 聽起來這個元素實際上並沒有最終可見,並且無論隱式等待如何,這仍然會引發錯誤:

raise unless continue_element.visible?

同樣,一個更好的模式是:

continue.wait_until_present 

要么

continue.when_present.click 

.present? 只是意味着.exists? &&。 .visible? 這實際上是您想要的,此模式將為您提供更好的錯誤消息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM