Я пытаюсь использовать grunt-contrib-qunit
для запуска уже существующего набора тестов qunit (тестирование синтаксического анализа результатов запроса ajax) в автономном режиме с Phantom в Windows 8.
Тесты завершаются нормально в следующих сценариях:
- При доступе к удаленной странице напрямую из любого браузера без запущенного Fiddler или другого прокси-сервера
- Когда Phantom запускает тесты из командной строки, с открытым и работающим Fiddler
Как ни странно, если у меня нет открытого fiddler, отслеживающего запросы, запросы AJAX, которые я тестирую, никогда не инициализируются. Я проверил свои настройки IE LAN по умолчанию, и прокси-сервер не включен, я также попытался установить флажок «Автоопределение настроек» и никаких изменений.
Есть предположения??
Подробности о моей настройке:
- Узел v0.10.4
- Последний
grunt-contrib-qunit
- Windows 8
- QUnit разделен на 4 или 5 модулей с задачами настройки и демонтажа в некоторых модулях, асинхронными и синхронными тестами, а для автозапуска установлено значение false.
Обновление:
Если я отключу параметры в Fiddler для «Повторное использование клиентских подключений» и «Повторное использование подключений к серверам», я, похоже, получу то же поведение сбоя, что и при выключенном Fiddler. Это заставило меня поверить, что это проблема с преждевременным закрытием соединений, поэтому я попытался установить собственный заголовок проверки активности, но он все равно выдает ошибку.
Обновление 2:
Я все еще сомневаюсь в этом, потому что сама страница загружается нормально, но запросы не выполняются, но похоже, что это может быть связано с аутентификацией NTLM. Скрипач может каким-то образом облегчить рукопожатие. На странице Phantom github есть открытая проблема для NTLM.
Обновление 3:
После продолжения устранения неполадок сегодня вечером похоже, что проблема связана только с аутентификацией в запросах POST. Запросы GET работают нормально. Сейчас я работаю над обходом этого, перенаправляя все запросы через обработчик ASHX и, таким образом, удаляя компонент аутентификации. Единственное, что мне пришлось изменить, это отключить веб-безопасность на фантоме, чтобы разрешить междоменные запросы.