Ошибка защищенного режима Internet Explorer

мой код в Visual studio использует selenium webdriver 2.24.0. Мой фреймворк тестирования, который я использую, - Nunit. Мой код работал отлично(загрузка diff. браузеры, вождение веб-сайтов) до версии 2.24.0 не был выпущен.

я добавил новый автономный сервер IE в свой проект.

теперь всякий раз, когда я запускаю свой код, NUnit встречает это сообщение об ошибке.

 FirstSeleniumTest.SeleniumTest.TestGoogle:
SetUp : System.InvalidOperationException : Unexpected error launching Internet Explorer. Protected Mode settings are not the same for all zones. Enable Protected Mode must be set to the same value (enabled or disabled) for all zones. (NoSuchDriver)
TearDown : System.NullReferenceException : Object reference not set to an instance of an object.

затем появляется Командная строка с этим.

Started InternetExplorerDriver server (64-bit)
2.24.0.0
Listening on port 50329

Я отключил защищенный режим на моем ТО ЕСТЬ. Все равно не повезло.

Как я могу вернуть свой код к правильному webdriving?

4 ответов


вы должны убедиться, что защищенный режим включен или отключен для все 4 зоны безопасности (интернет, локальная интрасеть, доверенные сайты, ограниченные сайты). Другими словами, значение параметра должно быть одинаковым для всех зон безопасности.


просто чтобы добавить к уже правильным ответам, Если установка всех значений одинакова, это не вариант (нужна безопасность отключена в некоторых зонах, но хотите, чтобы безопасность была включена в других), вы также можете инициализировать драйвер с перегрузкой, которая включает InternetExplorerOptions, и использовать

new InternetExplorerOptions() { IntroduceInstabilityByIgnoringProtectedModeSettings = true}

для каждой зоны необходимо задать одинаковые значения параметров защищенного режима. Читайте: http://code.google.com/p/selenium/wiki/InternetExplorerDriver#Required_Configuration


Я согласен с тем, что говорит Александр, но что, если ваша фирма не позволяет вам вносить какие-либо изменения в настройки IE.


для меня сработало следующее:

    File file = new File("M:\dev\ria\iedriver\2.42.0\install\exec\IEDriverServer.exe");
    System.setProperty("webdriver.ie.driver", file.getAbsolutePath());

    DesiredCapabilities caps = DesiredCapabilities.internetExplorer();
    caps.setCapability(CapabilityType.ACCEPT_SSL_CERTS, true);  
    caps.setCapability(InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);

    WebDriver driver = new InternetExplorerDriver(caps);
    driver.get("http://www.google.com");