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

Selenium Comment attendre le chargement de la page

Linda Hamilton
Linda Hamiltonoriginal
2024-09-30 06:10:031111parcourir

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();
}`

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!

Déclaration:
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