#c# #webdriver #selenium-webdriver
#c# #webdriver #selenium-webdriver
Вопрос:
У меня возникла простая проблема при использовании InternetExplorerDriver:
IWebDriver driver = new InternetExplorerDriver();
//IWebDriver driver = new FirefoxDriver();
// IWebDriver driver = new ChromeDriver();
try
{
driver.Navigate().GoToUrl("http://myurl.pl/");
}
catch (Exception ex)
{
Console.WriteLine("ERROR: page load");
Console.WriteLine(ex.ToString());
System.Console.ReadLine();
return;
}
Когда я использую FireFox или Chrome, я всегда получаю исключение «ОШИБКА: загрузка страницы» (в FireFox таких проблем нет).
Что происходит, на самом деле, я вижу страницу, загруженную в открытом браузере, но WebDriver, похоже, не может связаться с браузером позже.
Более того, я не получаю никаких сообщений об исключении (кроме моего собственного и следующего в коде — Не удается найти элемент с именем == email).
У вас есть какие-либо подсказки на этот счет? Мне нужно использовать IE.
Комментарии:
1. Что это за исключение, которое отображается после того, как «ОШИБКА: загрузка страницы» записывается в консоль?
2. Какая версия IE и какой операционной системы?
Ответ №1:
Вы не упомянули, какую версию IE вы используете, но если вы используете IE 7, 8 или 9 в Windows Vista или Windows 7, проблема взаимодействия с IE с помощью WebDriver часто возникает из-за настроек защищенного режима. Начиная с 2.0 b1, вы должны установить в настройках защищенного режима IE одинаковое значение для всех зон. Чтобы установить параметры защищенного режима, выберите Свойства обозревателя … в меню Сервис и перейдите на вкладку Безопасность в диалоговом окне Свойства обозревателя. Для каждой зоны на вкладке вы увидите флажок с надписью «Включить защищенный режим». Установите этот флажок на одно и то же значение для каждой зоны. Его можно проверить или снять, если он тот же.
Эта страница в вики проекта была недавно обновлена, чтобы документировать это требование к конфигурации.
Комментарии:
1. Спасибо! Сброс этой опции в IE работает хорошо! (IE 9, Win 7 x64).
2. После нескольких часов поиска в Интернете — это было решение. Мой WebDriver в C # ничего не смог найти на странице — перевел все зоны в защищенный режим, и это, наконец, работает!