Internet Explorer 8 64bit и Selenium Не работает
Я пытаюсь запустить тесты селена. Но каждый раз, когда я пытаюсь запустить тесты, которые должны запускать IE, я получаю сообщение об ошибке в строке 863 htmlutils.js. В нем говорится, что я должен отключить свой блокировщик всплывающих окон. Дело в том, что я пошел в IE tools- > очередь всплывающего блока.
Поэтому он отключен, и я получаю эту ошибку.
Есть ли что-то еще, что мне нужно отключить. Я даже не знаю, какая версия Internet Explorer работает, поскольку я использую 64-разрядную версию Windows 7 Pro. Поэтому, когда я использую IE, я использую 64-битную версию, но я понимаю, что если сайт или что-то в этом роде не поддерживает 64-разрядный, он переходит на 32-разрядный.
Так что не уверен, что мне нужно сделать, чтобы он работал.
Это строки, в которых он делает
function openSeparateApplicationWindow(url, suppressMozillaWarning) {
// resize the Selenium window itself
window.resizeTo(1200, 500);
window.moveTo(window.screenX, 0);
var appWindow = window.open(url + '?start=true', 'selenium_main_app_window');
if (appWindow == null) {
var errorMessage = "Couldn't open app window; is the pop-up blocker enabled?"
LOG.error(errorMessage);
throw new Error("Couldn't open app window; is the pop-up blocker enabled?");
}
Где хранится это сообщение log.error? Возможно, я тоже опубликую это.
Ответы
Ответ 1
У меня была аналогичная проблема с Vista и IE8
Я получаю такое же сообщение об ошибке
Couldn't open app window; is the pop-up blocker enabled?"
Запуск моего пульта дистанционного управления в качестве администратора не был для меня вариантом, а также плохой идеей с точки зрения безопасности.
Таким образом, в конце концов, мне удалось это решить, изменив браузер с "* ietha" на "* iexploreproxy",
grid_configuration.yml
hub:
port: 4444
...
- name: "Internet Explorer 8 on Vista"
browser: "*iexploreproxy"
...
В качестве альтернативы вы можете изменить строку браузера из кода:
ISelenium selenium = new DefaultSelenium("localhost", 4444, "*iexploreproxy", "http://www.google.com/");
Работает как шарм.
Единственный вопрос, связанный с проблемой, заключается в том, что это как-то влияет на результат тестовых случаев. Пока нет, но я обновлю этот ответ, если это произойдет.
Ответ 2
Я столкнулся с этим на Windows 7 64bit.
Мое решение было:
-
Отключить всплывающий блок. - Выберите "Инструменты/Блокировщик всплывающих окон/Отключите блокировщик всплывающих окон"
-
Отключить защищенный IE режим. - Отменить "Инструменты/Свойства обозревателя/Безопасность/Включить защищенный режим"
Лучше всего отключить защищенные режимы для известных доверенных хостов/адресов. Я оставлю это как упражнение для читателя.
Ответ 3
У меня была та же проблема. Я запускал сервер Selenium RC в качестве администратора, и все работало нормально.
Ответ 4
Я тоже испытываю эту проблему в 64-битном поле Windows 7, пытаясь запустить Selenium для тестирования и приложения ASP.NET. MVC, написанное на С#.
Я все еще пытаюсь выработать ответ для себя, но я думал, что отправлю сюда, чтобы рассказать вам о небольшом прогрессе, который я сделал, чтобы заставить что-то работать, хотя в Firefox вместо IE.
Здесь строка я изменилась:
selenium = new DefaultSelenium("localhost", 4444, "*chrome C:/Program Files (x86)/Mozilla Firefox/firefox.exe", "http://www.bbc.co.uk/");
В идеале я бы хотел, чтобы это работало в Internet Explorer 8, но если на данный момент я могу начать работу с работами, а позже перейду на использование IE снова, то отлично.
Надеюсь, что это поможет вам в решении этой проблемы.
Ответ 5
У меня была такая же проблема, и я нашел другое решение, которое работает для меня. Просто используйте настройку * iexploreproxy в браузереString.
Я использовал:
selenium = new DefaultSelenium("localhost", 4444, "*iexploreproxy C:/Program Files/Internet Explorer/iexplorer.exe", "http://www.bbc.co.uk/");
Я надеюсь, что это работает и для других:)
Ответ 6
У меня была такая же проблема для Windows 7 64-битного IE8. Первым шагом было отключить блокировщик всплывающих окон IE. Затем я получил сообщение в строке состояния, в котором говорилось, что "Всплывающие окна были заблокированы на этой странице. Нажмите клавишу" Ctrl ", чтобы разрешить всплывающие окна".
Оказывается, панель инструментов Google предоставляла эту функцию. Отключение его решило проблему. Просмотp > Панели инструментов > Google для переключения.
Джон.
Ответ 7
Если вы делаете это из JavaScriptMVC, есть ссылка, которую нужно изменить в \jmvc\plugins\test\drivers\selenium.js:
1) Измените iexplore на iexploreproxy, и вы должны получить лучшие результаты:
msie : (/iexploreproxy/i).test(browserStartCommand),
2) На этом этапе вы обнаружите, что по-прежнему появляется всплывающая ошибка, но запускается отдельный экземпляр IE. Оставьте это окно IE открытым и перезапустите тесты, но не Selenium.
3) Затем окна должны появиться в нужном месте, но IE дает предупреждение раздражающего блока. Разрешить содержимое запускать и перезапускать тесты, но не сам Selenium.
Это супер неуклюжий, но, по крайней мере, вы пропустите эту часть. Если я найду более методичные способы выполнения этих действий, я буду обновлять по мере необходимости.
Ответ 8
Вы можете запустить тест при отключении режима безопасности в Интернете. Не знаю правильного имени для него, но на голландском языке это beveiligde modus.
Я попытался изменить настройки безопасности, чтобы огласить этот режим безопасности, но не смог найти правильную настройку для него. Он должен блокировать больше, чем вы можете установить вручную.