Testen Sie dynamisch geladene Inhalte mit Selenium Web Driver

Ich arbeite an einem System mit einem webbasierten Frontend, das ich mit Selenium teste. Auf einer Seite wird der Inhalt beim Scrollen dynamisch geladen (vielleicht wissen Sie das aus der Facebook-Freundesliste), da dies eine der Voraussetzungen ist.

Scrollen mit Selenium Webdriver (ich benutze Chrome) sollte über Javascript kein Problem sein. Es gibt jedoch ein Problem mit dem dynamisch hinzugefügten Inhalt. Wie kann ich den Webdriver dazu bringen, diese Elemente zu finden?

Ich habe Folgendes versucht, um nach unten zu scrollen, bis kein Inhalt mehr geladen wird:

int oldSize = 0;
int newSize = 0;
do {
  driver.executeScript("window.scrollTo(0,document.body.scrollHeight)");
  newSize = driver.findElementsBy(By.cssSelector("selector").size();
} while(newSize > oldSize);

Obwohl die Seite beim ersten Mal nach unten gescrollt wird und einige Inhalte jetzt korrekt geladen werden, werden sie von der findElementsBy (By) -Funktion der Treiber nicht gefunden.

Hat jemand jemals dieses Problem konfrontiert? Ich würde mich sehr freuen, wenn mir jemand helfen könnte, eine Lösung dafür zu finden!

Grüße, Benjamin

Antworten auf die Frage(3)

Ihre Antwort auf die Frage