Best Practice, um auf eine Änderung mit Selenium Webdriver zu warten?

Nach einem Klickereignis muss ich warten, bis sich ein Elementattribut geändert hat, bevor ich weitermache (Klickereignis führt dazu, dass bestimmte Elemente aus dem Fokus geraten und bestimmte andere über ein JS den Fokus erhalten).

Nachdem ich einige Zeit nach einer zuverlässigen Alternative zu "waitForAttribute" (Selen 1-Befehl) im Webtreiber gesucht hatte, konnte ich den folgenden Code zum Laufen bringen. Ich bin mir aber nicht sicher, ob dies die beste Implementierung ist ...

Jede andere bessere Lösung?

<code>wait = new WebDriverWait(wedriver1, TimeSpan.FromSeconds(5));
.....
button.Click();
wait.Until(webdriver1 => webdriver2.webelement.GetAttribute("style").Contains("display: block"));
</code>

Kann jemand bitte einen Link teilen, um zu erfahren, wie ich mit AJAX-Ereignisänderungen mit Webdriver umgehen kann?

Antworten auf die Frage(5)

Ihre Antwort auf die Frage