En su Marco de Selenio, puede que ya haya creado algunos métodos que le permitan esperar a que los elementos estén presentes antes de seguir adelante. Como tal, ya no necesitas usar SLEEPS en tu código de prueba.
1Thread.sleep(1000);
java

12WebDriverWait wait =newWebDriverWait(webDriver, timeoutInSeconds);wait.until(ExpectedConditions.visibilityOfElementLocated(By.id<locator>));
java
Aquí creamos una instancia de la clase WebDriverWait . La clase wait toma 2 parámetros; webDriver y timoutInSeconds . Una vez que has creado esta instancia te da acceso a diferentes métodos para esperar.
Aquí hay algunos de los diferentes métodos que puedes usar para esperar.
- alertIsPresent
- elementIfVisible
- elementSelectionStateToBe
- MARCO PARA ESTAR DISPONIBLE Y CAMBIAR A ÉL
- invisibilidadOfElementLocated
- numberOfWindowsToBe
- presenceOfElementLocated
- textToBePresentInElement
- titleContiene
- titleIs
- urlContiene
- urlMatches
- visibilityOfElementLocated
- Visibilidad de todos los elementos localizados
Otro consejo sobre el uso de una espera es que puedes crear tus elementos con una espera . Mira este simple ejemplo:
12WebDriver wait =newWebDriverWait(webDriver, timeoutInSeconds);WebElement button = wait.until(ExpectedConditions.visibilityOfElementLocated(By.id<locator>));
java
Hay un ejemplo aún mejor de usar el patrón de objeto de página y la configuración de fábrica de página para implementar una espera.
Su creación de la instancia de espera debería estar en la página base:
123456789101112privatestaticfinalString ERROR_DIV_ID =<locator>;@FindBy(id =<locator>)privateWebElement errorDiv;publicTestingContextgetTestingContext(){return testingContext;}publicWebElementgetErrorDiv(){return wait. until(ExpectedConditions.visibilityOfElementLocated(By.id(ERROR_DIV_ID));}
java
Espero que hayan disfrutado de este sencillo tutorial sobre la creación de una espera de Java-Selenio. Por favor, dejen sus comentarios y opiniones en la sección de abajo.