2016-06-23 20 views
-1

Ich benutze Web-Treiber warten wie explizit warten in Selen Web-Treiber. Aber es scheint nicht konsistent zu sein. vor der Maus über Operationen, Links Es ist nicht möglich, Element Fehler zu finden. Bitte sehen Sie die folgende Methode und schlagen Sie vor, wo ich falsch liege.Explizite Wartezeit in Selen webdriver

public WebElement waitForElement(String xPathExpression) { 
     WebDriverWait wait = new WebDriverWait(driver,30); 
     WebElement element = wait.until(ExpectedConditions.visibilityOf(driver.findElement(By.xpath(xPathExpression)))); 

     return element; 
    } 
+1

Sie müssen mit uns mehr Details geben. Der Code, den Sie platziert haben, sieht gut aus, aber wir können keinen Locator sehen, keinen HTML-Code, mit dem Sie arbeiten. Wir können Ihnen nicht sagen, was falsch ist, wenn wir nichts haben, mit dem wir arbeiten können. Ich kann Ihnen versichern, dass es keinen Fehler mit expliziten Warten in Selen gibt. – RemcoW

Antwort

0

Nur eine Vermutung, aber ich könnte ähnliches Verhalten auf sehr dynamischen Seiten gesehen haben. Das Element auf der Seite ändert sich während der Auswertung.

Ich bin in der Lage, diese Art von Problemen zu umgehen, indem FluentWait#ignoring

WebDriverWait wait = new WebDriverWait(driver,30) 
     .ignoring(NoSuchElementException.class);