2017-09-05 2 views
-1

Ich bin neu in Selenium. Ich versuche die Schritte der Filterung (nach Typ = Neu) und der Sortierung (nach Datum absteigend) einer Tabelle in einer Webseite mit Selenium zu automatisieren. Ich verwende die Funktionen sendKeys() und click() für diese Operationen.Selenium: Warten auf vorherige Aktion in Java abzuschließen

Ich verwende Thread.sleep (1000) zwischen den SendKeys und Klick-Funktionen, so dass die Liste nach einer Kategorie gefiltert wird, bevor es sortiert ist.

Gibt es eine Möglichkeit, den Code warten müssen, bis die Seite nach der Sendkeys-gefiltert wird() und dann mit dem Klick-Betrieb fortsetzen

+0

Siehe: [Wie mache ich X?] (Https://meta.stackoverflow.com/questions/253069/whats-the-apply-new-current-close-reason-for-how-doi-i- do-x) Die Erwartung an SO ist, dass der Benutzer, der eine Frage stellt, nicht nur Forschung betreibt, um seine eigene Frage zu beantworten, sondern auch diese Forschung, Code-Versuche und Ergebnisse teilt. Dies zeigt, dass Sie sich die Zeit genommen haben, sich selbst zu helfen, es rettet uns davor, offensichtliche Antworten zu wiederholen, und vor allem hilft es Ihnen, eine spezifischere und relevantere Antwort zu erhalten! Siehe auch: [ask] – JeffC

+0

Sicher, würde das beim nächsten Mal beachten – user2335580

Antwort

1

Sie WebDriverWait Klasse verwenden, können Sie für eine Bedingung zu warten, um wahr zu sein. In Ihrem Fall sortieren Sie eine Tabelle. Verwenden Sie das wait-Objekt, um das Vorhandensein der Position eines Elements nach dem Sortieren zu prüfen. Hier ist der Beispielcode

WebDriverWait wait= new WebDriverWait(driver,30); //30 represents 30 secs 
wait.until(ExpectedConditions.visibilityOfElementLocated(<Element locating stratergy>)); 

Stellen Sie sicher, dass das Element Stelle, die Sie erwähnen wollen Lage des Elements sollte nach Ihrer Tabelle zu sortieren.

Verwandte Themen