Implizite und explizite Wartezeiten mischen
Dasdocs sagen:
Eine implizite Wartezeit besteht darin, WebDriver anzuweisen, das DOM für eine bestimmte Zeitspanne abzufragen, wenn versucht wird, ein oder mehrere Elemente zu finden, wenn sie nicht sofort verfügbar sind.
Unterfrage:
Im Falle vonfind_elements_by_
(plural), wie viele Elemente hatimplicit_wait
Warten Sie, bis es existiert, bevor Sie mit Ihrem Skript fortfahren? Oder doch?implicit_wait
arbeite nur mitfind_element_by_
(Singular)? Wenn ja, was bedeuten die Dokumente mit "oder Elementen"?
Voneine SO Antwort Ich habe gelesen, dass es am besten ist, nicht sowohl implizite als auch explizite Wartezeiten in demselben Skript zu verwenden, was ich zur Kenntnis genommen habe, da ich möchte, dass die Tests so robust wie möglich sind.
Da ich weiß, dass es Zeiten gibt, werde ich auf jeden Fall brauchenWebDriverWait
Bedeutet das, dass ich loswerden muss?implicit_wait
in meinemunittest
setUp
Methode und stattdessen beschäftigenWebDriverWait
jedes mal wenn ich welche benutzefind_element_by_
Methode?
(Ich möchte das lieber nicht tun müssen; obwohl ich wohl jeden von ihnen setzen könntefind_element_by_
Methoden in meinen eigenen benutzerdefinierten Funktionen - jede in ihre eigene gewickeltWebDriverWait
-es fühlt sich an, als hätte ich das nicht müssen).
Meine Hauptfrage lautet also:
Kann ich stattdessen meine behalten?implicit_wait
in meinem TestsetUp
Methode und dann nur verwendenWebDriverWait
wenn es darum gehtfind_elements_by_
und andere Orte, an denen ich weiß, dass ich es brauche?