2016-12-13 1 views
0

Ich versuche, auf eine Schließen-Schaltfläche zu klicken, um ein Popup zu schließen. Allerdings erhalte ich den Fehler element not visible. Ich überprüfe, ob das Element auf der Seite existiert, aber der Fehler kommt trotzdem auf. Das Stück Code mit dem Fehler istSelenelement nicht sichtbar

while(driver.findElements(By.className("ui_close_x")).size() < 0); 
driver.findElements(By.className("ui_close_x")).get(0).click(); 
System.out.println("Clkd"); 

Wohin gehe ich falsch?

Der Versuch, tripadvisor

+0

Können Sie Ihren HTML-Code teilen? – JDelorean

+0

Überprüfen Sie die Größe von driver.findElements (By.className ("ui_close_x")) - Sie können mehr als ein solches Element haben, und das erste (mit Index 0) kann nicht sichtbar sein – mackowski

Antwort

1

Versuchen Sie zu kriechen mit expliziten Wartezeit verwenden expected conditions

WebDriverWait wait = new WebDriverWait(driver, 10); 
List<WebElement> elements = wait.until(ExpectedConditions.visibilityOfAllElementsLocatedBy(By.className("ui_close_x"))); 
elements.get(0).click(); 
+0

Vielen Dank. Arbeitete perfekt –