Heim  >  Artikel  >  Java  >  Selenium So warten Sie auf das Laden der Seite

Selenium So warten Sie auf das Laden der Seite

Linda Hamilton
Linda HamiltonOriginal
2024-09-30 06:10:031111Durchsuche

Selenium How To Wait Page Loading

Ich versuche, eine Anwendung mit Selenium zu erstellen. Meine Funktionen sind genau wie folgt. Nachdem Sie in einigen Dropdown-Menüs eine Auswahl getroffen haben, erscheint auf der Seite eine Animation mit der Klasse „Laden“, bei der alle Elemente entfernt und nach Abschluss des Ladevorgangs wieder hinzugefügt werden. Ich habe es so geschafft, wie ich es mitgeteilt habe, aber ich glaube, dass es einen effizienteren Weg gibt, es zu tun. Könnten Sie mir bitte helfen?

selectElement: Für das mit ul und li erstellte Menü sind JavaScript-Ereignisse definiert.

optionElement: Nachdem im selectElement-Teil eine Auswahl getroffen wurde, werden die Optionen innerhalb der Auswahl geladen und ich überprüfe, ob sie geladen wurden.

optionToSelect: Besteht aus den li-Elementen innerhalb des selectElement.

isLoadingExpected: Nach einigen Auswahlen erscheint eine Ladeanimation auf der Seite, die ich nicht verhindern konnte.

Hier ist das Video und was ich tun möchte (aus Datenschutzgründen unscharf): 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) löst die Ausnahme {
aus 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();
}`

Das obige ist der detaillierte Inhalt vonSelenium So warten Sie auf das Laden der Seite. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn