Chcę mieć różne czasy oczekiwania Capybara
w moim kodzie w zależności od tego, ile czasu zazwyczaj trwa do całkowitego załadowania? Czy muszę stale zmieniać kod Capybara.default_wait_time
, czy jest lepszy sposób?Wiele czasów oczekiwania na Capybara?
36
A
Odpowiedz
65
Można użyć using_wait_time(seconds) metody takie jak:
using_wait_time 3 do
expect(page).to have_text 'Lorem ipsum'
end
lub :wait
opcji (który ukazał się w Kapibara 2.1).
Należy pamiętać, że opcja :wait
była obsługiwana tylko przez metodę find
w Capybara 2.1.
Wsparcie :wait
opcja w dopasowujących (tj has_x?
i have_x
metody) został dodany w Kapibara 2.2:
expect(page).to have_text('Lorem ipsum', wait: 3)
Doskonała odpowiedź, dzięki za wspomnieć nadchodzącą wsparcie. – Jazzepi
Może czegoś tu brakuje, ale czy to nie jest tylko fantazyjny sposób używania snu (x)? – Dono
@Dono 'sleep' zawsze będzie pauzował dla' x'. 'have_text' zatrzyma się na czas do' x' (aż pojawi się tekst). –