Обычная проверка подлинности с помощью Selenium в Internet Explorer 10

Одним из наших веб-приложений является использование базовой аутентификации и сборка с AngularJS. Для тестирования этого приложения я использую Protractor, который использует Selenium для связи с браузерами.

В Chrome все работает нормально, а базовая аутентификация проста:

username:password@host.ext

Предполагается, что в Internet Explorer URL-адреса с паролем и именем пользователя представляют угрозу безопасности и поэтому не допускаются. До Internet Explorer 9 этот параметр можно было отключить в реестре (FEATURE_HTTP_USERNAME_PASSWORD_DISABLE), При настройке этого раздела реестра для Internet Explorer 10 поведение изменяется (ошибка не отображается, а URL-адрес перезаписывается без имени пользователя и пароля), но функция выглядит нарушенной. Internet Explorer 11 показывает то же поведение, что и Internet Explorer 10.

У кого-нибудь есть другой обходной путь, чтобы обойти эту проблему?

1 ответ

Решение

Мое обновление до Internet Explorer 10 также было обновлением до 64-разрядного Internet Explorer. И по какой-то причине в 64-битных вариантах используется другой ключ регистра:

HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/Internet Explorer/MAIN/FeatureControl/FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

Настройка DWORDiexplore.exe со значением 0 в этом разделе реестра исправлена ​​проблема.

64-битный вариант также очень медленный, и переключение обратно на 32-битный является хорошим выбором, чтобы исправить эту медлительность. 64-битный вариант IE используется только с 64-битным вариантом IEDriverServer.exe, С помощью IEDriverServer.exe 32-разрядная версия позволяет вам вернуться к 32-разрядной версии IE.

Для завершения ключ регистрации для 32-разрядного:

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Internet Explorer/MAIN/FeatureControl/FEATURE_HTTP_USERNAME_PASSWORD_DISABLE
Другие вопросы по тегам