Неожиданные коды состояния HTTP при использовании WCAT с NTLM

#asp.net #http #iis #ntlm #wcat

#asp.net #http #iis #ntlm #wcat

Вопрос:

Кто-нибудь знает, как избежать записи WCAT неожиданных кодов состояния HTTP «401 неавторизованный» при тестировании веб-приложения, использующего аутентификацию NTLM? Пример кода, который я использую для запроса, приведен ниже:

     request
    {
    url = "http://server";
    authentication = NTLM;
    username = "user";
    password = "xxxx";
    statuscode = 200;
    }
  

Для пояснения, этот скрипт работает нормально и действительно извлекает содержимое, но при запуске на сервере IIS7 согласование NTLM (я полагаю) означает, что записывается начальный код 401, а также конечный код 200.

Это означает, что после теста отчет показывает такое же количество кодов 401, как и 200 кодов, и, к сожалению, 401 записываются как неожиданные коды / ошибки.

Я понимаю, что это вопрос, аналогичный заданному ранее, но в этом конкретно спрашивается, есть ли способ избежать неожиданных кодов состояния.

Спасибо!

Ответ №1:

Что вам нужно (я думаю), так это transaction { ... } с несколькими request { ... } элементами внутри, некоторые из которых ожидают код состояния 401:

 transaction
{
    id = "home";
    weight = 1000;
    request
    {
        url = "/";
        statuscode = 401;
        redirect = true;
        cookies = true;
    }
    request
    {
        url = "/";
        statuscode = 401;
        authentication = NTLM;
        username = "domain\username";
        password = "password";
        redirect = true;
        cookies = true;
    }
    request
    {
        url = "/";
        authentication = NTLM;
        username = "domain\username";
        password = "password";
        statuscode = 200;
        redirect = true;
        cookies = true;
    }
}
  

Комментарии:

1. (Просто просматриваю свою учетную запись SO, отсюда и поздний ответ!)

2. Я думаю, что я пробовал это в июне, но все еще возникли некоторые проблемы. Я помню, что это было лучше, но не полное решение, но спасибо за помощь 🙂

3. Извините за necro, но я просто хотел прокомментировать, что именно эта проблема рассматривается в документации в каталоге wcat / doc, wcat.doc, страница 23. Фил, похоже, на правильном пути в этом отношении.

4. Я перепробовал все комбинации, но это просто не работает. Он отправляет заголовок авторизации, но каким-то образом он все еще получает 401