Buenas lectores.
Vamos a dividir la espera de tiempo según la patron que estemos manejando:
SIN PATRONES:
Podemos encontrar frecuentemente la línea
Thread.sleep(2000);
"Thread.sleep" should not be used in tests
Si eres de las personas que no les gusta la deuda técnica o simplemente estas por mejorar tu código, aquí te mostraré como lo puedes hacer
POM (Page Object Model):
En POM es facil implementar una espera sin deuda técnica, en este caso vamos a usar Awaitility
import org.awaitility.Awaitility;
import org.awaitility.Durations;
Con esto hemos logrado mejorar el código y evitar la deuda técnica.
Awaitility.await().atMost(2, TimeUnit.MINUTES).pollDelay(1, TimeUnit.MINUTES).until(() -> true);
Awaitility.await().with().pollInterval(Durations.ONE_SECOND).await().atMost(Durations.TEN_SECONDS).until(myFunction());
actor.attemptsTo(Task.where("waiting for route destine selector",
a -> Awaitility.await().pollDelay(Durations.ONE_SECOND)
.until(() -> true))
);
Fuentes:
No hay comentarios:
Publicar un comentario