Ich verwende ein Schlüsselwort getriebenes Framework und ruft es aus einer DS.java
Datei. Meine Anforderungen, wie folgend:
Wechseln zwischen Browser-Fenstern mit Selenium Webdriver
- Browser window01: Aufgaben,
- öffnen Sie einen neuen window02 Browser, indem Sie auf URL klicken in window01,
- Auf window02, bestimmte Aufgaben,
- Schließen window02 und Schalter Kontrolle window01,
- ich erhalte Fehler
org.openqa.selenium.NoSuchWindowException: no such window. (Session info: chrome=55.0.2883.87)
(Driver info: chromedriver=2.26.436362 (5476ec6bf7ccbada1734a0cdec7d570bb042aa30),platform=Windows NT 6.1.7601 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Ich habe mit unten genannten Code getan, aber es hat nicht für mich funktioniert.
(able to get the window handle here: CDwindow-b20d349b-3cb5-42ed-9f77-5229c88d4300)
public static void store_ParentWindow(String TCID,String vTCD,String vKW) throws IOException, InterruptedException, AWTException, BiffException, ParseException{
String parentWindow = driver.getWindowHandle();
DS.envVar.put("parentWindow", parentWindow);
Thread.sleep(5000);
System.out.println(DS.envVar.get("parentWindow"));
}
public static void switch_ParentWindow(String TCID,String vTCD,String vKW) throws IOException, InterruptedException, AWTException, BiffException, ParseException{
driver.close();
String parentWindow = DS.envVar.get("parentWindow");
System.out.println(DS.envVar.get("parentWindow"));
driver.switchTo().window(parentWindow);
driver.switchTo().defaultContent();
Thread.sleep(5000);
}
Kann mir jemand zu diesem Thema helfen?
Ihr Code funktionierte nicht für mich, da ich sie in 2 verschiedenen Schritten benötige> Übrigens habe ich kein Problem beim Erfassen des Elternfenstergriffs oder beim Wechseln zum neuen Fenster und Schließen. Das einzige Problem ist, dass ich nach dem Schließen des neuen Fensters nicht zum Eltern-Fenster wechseln kann. – xxan
Für zurück zum vorherigen Fenster benutze 'driver.switchTo(). Window (winHandleBefore);' –
Das habe ich auch ohne Glück versucht. Vielen Dank für Ihre Antwort – xxan