[英]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.