Подтвердить что ты не робот

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? Возможно, я тоже опубликую это.

4b9b3361

Ответ 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. Я попытался изменить настройки безопасности, чтобы огласить этот режим безопасности, но не смог найти правильную настройку для него. Он должен блокировать больше, чем вы можете установить вручную.