¿Cuándo usar la espera explícita frente a la espera implícita en Selenium Webdriver?
Estoy usando:
driver.manage().timeouts().implicitlyWait(180, TimeUnit.SECONDS);
Pero sigue fallando continuamente por el siguiente elemento
driver.findElement(By.id("name")).clear();
driver.findElement(By.id("name")).sendKeys("Create_title_01");
He añadido el código de espera:
for (int second = 0;; second++) {
if (second >= 120) fail("timeout");
try { if (isElementPresent(By.id("name"))) break; } catch (Exception e) {}
Thread.sleep(1000);
}
¿No debería la espera implícita ocuparse de esperar hasta que se encuentre un elemento? También sería mejor si utilizara la espera explícita en lugar del código que he agregado que tieneThread.sleep()
?