¿Mejores prácticas para esperar un cambio con Selenium Webdriver?

Después de un evento de clic, debo esperar a que un atributo de elementos cambie antes de continuar (el evento de clic hace que ciertos elementos se muevan fuera de foco y otros se enfoquen a través de un JS)

Después de dedicar tiempo a buscar una alternativa confiable a "waitForAttribute" (comando de selenio 1) en webdriver ... Podría hacer que el código de abajo funcione. Pero no estoy seguro de si esta es la mejor implementación ...

¿Alguna otra solución mejor?

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

Además, ¿alguien puede compartir un enlace sobre cómo puedo manejar los cambios de eventos AJAX utilizando webdriver?

Respuestas a la pregunta(5)

Su respuesta a la pregunta