2016-09-14 2 views
0

Ich habe eine Basisklasse, in der ich WebDriver als (mit Guice) definiert. Das hat meinen beforeclass zusammen mit der unten stehenden Codezeile definiertKein solches Element: Element kann nicht gefunden werden: Ausnahme von Webdriver

@Inject 
    protected Provider<WebDriver> webDriverProvider; 

    protected static WebDriver webDriver; 

Ich habe eine andere Klasse, die nach beforesuite ausgeführt wird, und es hat einen method1, wo ich meinen Test für eine bestimmte Funktion geschrieben habe. Und es sieht so etwas wie dieses

public void method1() throws InterruptedException { 
     Thread.sleep(3000); 
     log.info("Navigating to Method1"); 
     webDriver.findElement(By.xpath(Element1)).click(); 
    } 

Das Problem hier ist, wenn die Leitung
webDriver.findElement (By.xpath (Element1))() klicken.

ausgeführt ich eine Ausnahmemeldung als org.openqa.selenium.NoSuchElementException erhalten: kein solches Element: Kann Element suchen:

Xpath korrekt ist. Ich habe ein Dialogfeld, bevor dieser Methode, die Teil meines beforesuite

Ich habe versucht, das Hinzufügen folgenden Zeilen über dem Klick-Anweisung lautet:

webDriver.switchTo().defaultContent(); 

log.info (webDriver.findElement (By.xpath (Element1)) .getAttribute (Element1)); webDriver.findElement (By.xpath (Element1)). IsDisplayed();

Das Problem ist das erste Beispiel, wo „WebDriver“ befindet es eine Ausnahme als NoSuchElementException wirft

Alle Zeiger mir bei der Fehlersuche weiter helfen würden.

Danke.

+0

versteckt I class1 in class2 – Prabhath

+0

Folgen Sie dieser Antwort erweitert haben http://stackoverflow.com/questions/39190910/nosuchelementexception-unable-to-locate- element/39191349 # 39191349 –

+0

Saurabh: Es ist nicht in einem Iframe und auch ich habe für 10 Sekunden warten, die das Problem nicht gelöst hat. – Prabhath

Antwort

0

Wenn Sie sicher sind, Xpath ist richtig. Sie können versuchen, mehr Schlaf hinzuzufügen. Wie Sie sagte, es gebe Dialogfeld wird dann prüfen, ob es die element1

+0

Ich versuchte es mit 10 Sekunden Schlaf. Das funktioniert nicht. – Prabhath

Verwandte Themen