Używając selenu w Internet Explorerze otworzyłem nowe okno z kodem javascript:

((JavascriptExecutor) driver).executeScript("windows.open('www.google.com')");

Kiedy próbuję przejść do tego nowego okna, selen nie wykrywa okna. W momencie drukowania ilości okien otwieranych przez kierowcę otrzymuję tylko 1:

Set<String> handlesSet = visor.getWindowHandles();
List<String> handlesList = new ArrayList<String>(handlesSet);
System.out.println("open windows: " + handlesList.size());

Moje pytanie : ¿Czy można zarządzać tym nowym oknem otwartym z poziomu javascript?

Dziękuję Ci.

0
Alejandro Herrera 19 listopad 2019, 17:13
Trzy pytania wyjaśniające: Po pierwsze, czy nowa klamka pojawia się z opóźnieniem? Po drugie, czy ustawienia trybu chronionego są prawidłowo ustawione? Po trzecie, co pokazuje dziennik poziomu TRACE programu IEDriverServer.exe?
 – 
JimEvans
19 listopad 2019, 17:19
Wstawiłem opóźnienie 10 sekund i klamka okna nie pojawia się. Ustawiłem: ignoreProtectedModeSettings na true. ¿gdzie mogę zobaczyć ślad IEDriverServer?
 – 
Alejandro Herrera
19 listopad 2019, 19:17
Jeśli masz ignoreProtectedModeSettings ustawiony na true, jest to całkiem prawdopodobne, że jest to problem. Skonfiguruj przeglądarkę prawidłowo do pracy ze sterownikiem, ustawiając tryb chroniony na tę samą wartość (włączone lub wyłączone, oba będą działać) dla wszystkich stref.
 – 
JimEvans
19 listopad 2019, 22:51

1 odpowiedź

To nie działa, ponieważ windows, powinno window, bez s:

((JavascriptExecutor) driver).executeScript("window.open('https://www.google.com')");

Nie zapomnij podać pełnego adresu URL w https://

0
frianH 20 listopad 2019, 06:35