Alejandro Herrera
Alejandro Herrera

Reputation: 441

Internet explorer driver with Selenium does not allow to handle the window when accessing external web pages

When I access pages in http://localhost... Selenium allows me to manage the window, for example changing its position, but when I access a page from another server I get the following error:

org.openqa.selenium.NoSuchWindowException: Error retrieving current window at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at org.openqa.selenium.remote.http.W3CHttpResponseCodec.createException(W3CHttpResponseCodec.java:187) at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:122) at org.openqa.selenium.remote.http.W3CHttpResponseCodec.decode(W3CHttpResponseCodec.java:49) at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158) at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83) at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:552) at org.openqa.selenium.remote.RemoteWebDriver$RemoteWebDriverOptions$RemoteWindow.setPosition(RemoteWebDriver.java:807) at seleniumie.SeleniumIE.main(SeleniumIE.java:49)

My code:

Point esconder = new Point(-1000,-1000);
String URL = "http://www.google.com/";
DesiredCapabilities cap = DesiredCapabilities.internetExplorer();
cap.setCapability("nativeEvents", false);
cap.setCapability("unexpectedAlertBehaviour", "accept");
cap.setCapability("ignoreProtectedModeSettings", true);
cap.setCapability("disable-popup-blocking", true);
cap.setCapability("enablePersistentHover", true);
cap.setCapability("ignoreZoomSetting", true);
cap.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);
InternetExplorerOptions options = new InternetExplorerOptions();
options.merge(cap);
visor = new InternetExplorerDriver(options);
visor.get(URL);
Thread.sleep(3000);
visor.manage().window().setPosition(esconder);

When I run the last line is when I get the error

I am using IE11 browser

Upvotes: 1

Views: 125

Answers (1)

Alejandro Herrera
Alejandro Herrera

Reputation: 441

I have found the solution!

The problem arises because internet explorer has protected mode active, when I disable protected mode it works perfectly for me.

Upvotes: 1

Related Questions