OS: OSX El Capitan Selen Version: 2.53.0 Browser : Safari Browserversion: 9.1 SafariDriver-Version: 2.48.0, die auf der SeleniumHQ-Website aktuell ist.
erwartete Verhalten -
SafariDriver Launcher Seite/Reiter automatisch geschlossen bekommen sollten und zum ersten Register geschaltet, wo meine URL geöffnet zu werden.
tatsächliches Verhalten -
Selen auf SafariDriver Launcher Seite [Tab] geklebt wird immer durch nicht schließen und zurück zum ersten Tab
Schritte Wechsel zu reproduzieren -
Der Versuch, eine Anzahl von n auszuführen Testfälle aus TestNG.xml, aber einige TCs werden ordnungsgemäß ausgeführt, indem die SafariDriver Launcher-Seite [Registerkarte] geschlossen wird. Aber Selenium bleibt in wenigen Fällen auf der SafariDriver Launcher-Seite [Tab] stecken, indem es nicht geschlossen wird und zum ersten Tab zurückwechselt, wo meine URL geöffnet wird.
Benötigte Lösung -
Ich will zunächst prüfen, wie viele Tabs derzeit geöffnet sind: -
if(browser.equals("safari")){
capability=DesiredCapabilities.safari();
capability.setBrowserName("safari");
capability.setPlatform(Platform.MAC);
capability.setVersion("9.1");
capability.setJavascriptEnabled(true);
driver=new RemoteWebDriver(new URL(grid_url),capability);
driver.get(url);
Thread.sleep(2000);
String windowHandle = driver.getWindowHandle();
ArrayList tabs = new ArrayList (driver.getWindowHandles());
if(tabs.size()>1){
<***Need a solution here to close second tab and switch to first tab***>
driver.switchTo().window(tabs.get(0));
}
}
Hey "" .dieser Dank für die Antwort, Lass mich dich updaten, ob es meiner Anforderung entspricht –
@PraveenPavu: sicher. wc – nullpointer
org.openqa.selenium.NoSuchWindowException: Der Treiber ist nicht auf ein Fenster fokussiert. Sie müssen zu einem Fenster wechseln, bevor Sie fortfahren. (ACHTUNG: Der Server hat keine Stacktrace-Informationen bereitgestellt.) Befehlsdauer oder Timeout: 3 Millisekunden –