Как я могу загрузить тест сайта, который использует ValidateAntiForgeryToken? - PullRequest
2 голосов
/ 21 февраля 2012

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

Есть ли способы загрузить тестовые сайты, где я использую атрибут ValidateAntiForgeryToken в моих HttpPost методах?

Я пытался использовать StresStimulus, а также LoadComplete SmartBear для своих тестов.

Ответы [ 3 ]

3 голосов
/ 21 февраля 2012

Если вы используете fiddler и http://stresstimulus.stimulustechnology.com/ (которые я не использовал), я должен представить, что вы можете сначала войти в систему, а затем использовать эту сессию в качестве своей загрузки.Токены AntiForgeryToken НЕ являются однократными, и, если для вашей информации авторизации и токена защиты от подделки, сгенерированного во время этого сеанса входа в систему, существует файл cookie, все должно быть в порядке.

1 голос
/ 16 мая 2012

У меня была такая же проблема со StressStimulus. Некоторые формы, отправленные на сайт, не работали, потому что __RequestVerificationToken не обновляется при выполнении записанного запроса. {{Автокорреляция}} не работает в моем случае. Я использовал экстрактор регулярных выражений, чтобы решить это. Вот ссылка на мой пост на StressStimulus

0 голосов
/ 22 февраля 2012

Не видя деталей сценария, с которым вы работаете, трудно сказать наверняка. Но мы смогли автоматизировать многие из этих типов динамических полей для целей нагрузочного тестирования (единственные, которые мы не смогли обойти, - это те, которые требуют участия человека, то есть каптчи). В общем, вам нужно найти источник значения поля __RequestVerificationToken - будь то файл cookie, вычисление javascript, поле скрытой формы и т. Д. После того, как вы его нашли, вы можете извлечь или вычислить это значение как часть сценарий нагрузочного тестирования и отправьте его вместе с запросом. Если мне не изменяет память, мы уже занимались этим без особой работы - если вы хотите дать нам шанс на проблему, свяжитесь с нами . В целом, мы можем решать эти типы проблем гораздо более изящно, чем любое из упомянутых вами решений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...