Wenn es um den Umgang mit Zeitproblem kommt, ist es verlockend und einfach ein „schnellen“ browser.sleep zu setzen() und zieht weiter.
Das Problem ist, es würde eines Tages fehlschlagen. Es gibt keine goldene/generische Regel dafür, welches Sleep-Timeout eingestellt werden soll. Daher kann es länger dauern, dass eine Seite geladen wird oder ein Element sichtbar wird, usw. Dies kann zu einem bestimmten Zeitpunkt aufgrund von Netzwerk- oder Performance-Problemen oder anderen Problemen länger dauern Die Zeit, Sie würden am Ende warten mehr als Sie eigentlich sollten.
browser.wait() auf der anderen Seite funktioniert anders. Sie stellen eine Expected Condition function für den Progractor/WebDriverJS zur Verfügung und warten auf das Ergebnis der Funktion, um sie als wahr auszuwerten. Der Winkelmesser würde die Funktion kontinuierlich ausführen und stoppen, sobald das Ergebnis der Funktion wahr ist oder ein konfigurierbarer Timeout erreicht wurde.
Es gibt mehrere integrierte erwartete Bedingungen, aber Sie können auch eine benutzerdefinierte erstellen und verwenden (Beispiel here).