2017-01-17 11 views
0

Я новичок в Jmeter. Попытка использовать этот инструмент для тестирования нагрузки/производительности.Отсутствует проверка подлинности или неправильный вход в систему

шаги:

  • пойти library.xxx.com
  • журнал в
  • логаута

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

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

Вот последовательность вызовов -

enter image description here

Теперь, когда я использую расширение хром blazemeter для записи теста и загрузить его в Jmeter- вот как он загружается

[[войти! описание изображения здесь] [2]] [2]

Когда auth.onecl .... com отправляет запрос в первый раз, он проходит.

Однако, когда он делает другой вызов, он терпит неудачу, поскольку токен-носитель является недействительным. Единственное отличие, когда я сравнивал заголовки запроса последовательности вызовов, -

отсутствует «Авторизация: предъявитель 5a010a8f995d2» во втором.

Я использовал средство выделения регулярных выражений, процессор BeanShell и т. Д., Но ничего не работает.

Вот что я попытался так далеко

Jmeter testing for Login

JMeter Basic Authentication

enter image description here

ответ

0

Это Authorization: bearer xxxxx означает, что ваше приложение защищено OAuth 2.0 поэтому у вас есть 2 варианта (в зависимости от вашего дизайн приложения):

  • Если OAuth маркер перманентный - просто получить все из них с помощью сниффера инструмента и поместить в CSV файл вместе с пользователями учетных
  • Если маркер имеет ограниченную продолжительность жизни - он все еще может быть соотнесен, проверить How to Run Performance Tests on OAuth Secured Apps with JMeter статьи для более подробной информации на обход вызовов OAuth в тестах JMeter
+0

Спасибо Dimitri. Здесь это описано более правильно, я даже не могу найти способ хранения токена как переменной, как здесь: http://stackoverflow.com/questions/24542747/jmeter-alter-http-headers-during-test?answertab=oldest#tab -top – lpt

+0

Я решил это самостоятельно. Мне пришлось захватить passKey с помощью Json Extractor, а затем использовать экстрактор RegEx для получения токена-носителя. Программирование не требовалось – lpt