Maison > Java > javaDidacticiel > Selenium Comment attendre le chargement de la page

Selenium Comment attendre le chargement de la page

Linda Hamilton
Libérer: 2024-09-30 06:10:03
original
1149 Les gens l'ont consulté

Selenium How To Wait Page Loading

J'essaie de créer une application utilisant Selenium. Mes fonctions sont exactement les suivantes. Après avoir effectué des sélections dans certains menus déroulants, une animation avec la classe « chargement » apparaît sur la page, au cours de laquelle tous les éléments sont supprimés puis réajoutés une fois le chargement terminé. J'ai réussi à gérer cela de la manière dont j'ai partagé, mais je pense qu'il existe un moyen plus efficace de le faire. Pourriez-vous s'il vous plaît m'aider ?

selectElement : le menu créé à l'aide de ul et li a des événements JavaScript définis.

optionElement : Après avoir effectué une sélection dans la partie selectElement, les options de la sélection sont chargées et je vérifie si elles ont été chargées.

optionToSelect : se compose des éléments li dans selectElement.

isLoadingExpected : Après avoir effectué quelques sélections, une animation de chargement apparaît sur la page, que je n'ai pas pu empêcher.

Voici la vidéo et ce que je veux faire (flou pour plus de confidentialité) : https://streamable.com/p47d93

selectItem(Elements.xxx.xPath, Elements.xxxOptions.xPath, aaa.bbb.xPath, 0);

`public static void selectItem(String selectElement, String optionElements, String optionToSelect, int isLoadingExpected) génère une exception {
WebDriverWait waitElement = new WebDriverWait(chromeDriver, Duration.ofSeconds(10));

    if (isLoadingExpected == 1) {
        waitElement.until(ExpectedConditions.visibilityOfElementLocated(By.className("loading")));
        waitElement.until(ExpectedConditions.invisibilityOfElementLocated(By.className("loading")));
    }

    WebElement selectWebElement = waitElement.until(ExpectedConditions.elementToBeClickable(By.xpath(selectElement)));
    waitElement.until(ExpectedConditions.numberOfElementsToBeMoreThan(By.xpath(optionElements), 1));
    selectWebElement.click();

    WebElement optionWebElement = waitElement.until(ExpectedConditions.elementToBeClickable(By.xpath(optionToSelect)));
    optionWebElement.click();
}`
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal