Два моих сценария -
1) Первый
@driver.manage.timeouts.implicit_wait = 30
@wait = Selenium::WebDriver::Wait.new(:timeout => 45) # Time greater than implicit
@wait.until {@driver.find_element(:tag_name => "body").text.include?("hey")}
Что дает драйверу 45 секунд для поиска текста (что ожидается)
2) Второй
@driver.manage.timeouts.implicit_wait = 30
@wait = Selenium::WebDriver::Wait.new(:timeout => 5) # Time less than implicit
@wait.until {@driver.find_element(:tag_name => "body").text.include?("hey")}
Теперь это дает драйверу 30 секунд для поиска текста (не ожидается)
Есть ли способ заставить селен ждать только время ожидания explicit
, а не для большего из двух?
Примечание. Не объявлять неявное время ожидания не является вариантом, потому что я не могу позволить селену повесить каждый раз, когда драйвер не может что-то найти.
Использование Selenium версии 30, windows, ff