WCAT: 404 не найден в файле журнала - PullRequest
2 голосов
/ 11 марта 2012

Чтобы выполнить свои нагрузочные тесты, я следовал любому руководству WCAT: 1. Установите IIS 6.0 2. Создайте 3 файла конфигурации (Конфигурация, Сценарий, Распространение), форматы которых строго следовали этому учебнику.3. Вызовите эти конфигурации с помощью команды wcctl (такой как: wcctl -c Configuration.cfg -d Distribution.cfg -s Script.cfg -a localhost 4. Вызовите wcclient.exe (например, wcclient localhost). Однако результаты, которые я получал всегдаиметь 200 Запрос ОК = 0, но 404 Не найдено занято все. (Примечание: мой URL в Script.cfg может быть успешно вызван через браузер, например: http://localhost:2631/WebServices/XXX.svc/POX/MyMethod?param1=I1&param2=true). Любой может сказать мне, как выполнить корректный запуск WCAT(200 в порядке, не 404 не найдено)? Я искал, но не смог найти ничего, кроме этой нечеткой вещи: Проблема WCAT Спасибо

1 Ответ

0 голосов
/ 28 ноября 2013

Я роюсь здесь в сорняках с 2012 года, но позвольте мне сделать попытку.

Недавно я столкнулся с подобной проблемой, когда я получал 404-е для всех запросов страниц, которые были сделаны WCAT..

Решение в моем случае было простым: все URL-адреса запроса в моем скрипте WCAT были относительными, и мне нужно было изменить их на абсолютные URL-адреса.

Вместо этого:

request
{
  verb = GET;
  url = "/mypage.aspx";
}

Я изменил их на это:

request
{
  verb = GET;
  url = "http://www.mydomain.com/mypage.aspx";
}

PS: может кто-нибудь объяснить мне, почему документация WCAT всегда показывает относительные URL в своих примерах и не ссылается на тот факт, что вы можете использовать абсолютныеURL-адрес?Кроме того, инструкции настаивают на том, что не стоит запускать WCAT на той же машине, на которой размещен ваш веб-сайт (потому что вы выбросите свои результаты), но все же во всех их примерах используются относительные URL-адреса, которые могут работать толькоесли вы запускали WCAT на той же машине, на которой размещен ваш сайт!

Редактировать

Кстати, альтернатива настройке хоста в URL-адресе, как якак показано выше, вы также можете сделать это:

request
{
  verb = GET;
  url = "/mypage.aspx";

  setheader
  {
    name="Host";
    value="http://www.mydomain.com";
  }
}
...