Механизм авторизации на основе токенов Jmeter



Я разработал REST WebAPI на основе JAXRS. Он находится под механизмом авторизации на основе токенов. Это очень похоже на OAuth 2.0:



Итак, мне нужно создать тест JMeter, чтобы проверить мой webapi.





1. Get Authorization Code (on http://www.host.com/authz)
Request:
[ Header: 'response_type', Value: 'code']
[ Header: 'client_id', Value: 'FIXED ID STRING']
[ Header: 'username', Value: '$USER provided from a data source' ]
[ Header: 'password', Value: '$PASSWORD provided from a data source']
Response:
[ Header: 'code', Value: '%AuthorizationCode' ]
[ Header: 'expires_in', Value: '100'(seconds)]



2. Get Access Token
Request:
[Header: 'grant_type', Value: 'authorization_code']
[Header: 'code', Value: '%AuthorizationCode provided on the last request']
[Header: 'client_id', Value: 'FIXED ID STRING']
Response:
[Header: 'access_token', Value: '%AccessToken']
[Header: 'expires_in', Value: '500'(seconds)]
[Header: 'refresh_token', value: '%RefrestToken']



После этого танца я получил код авторизации %, %AccessToken и a %RefreshToken.



С этого момента я могу получить доступ к webapi, используя эти коды.





ForEach user in a datasource:
Loop Forever:
Send Http request each X seconds (on http://www.host.com/webapi)
[Header: 'Authorization', Value: 'OAuth + %AccessToken']



Я абсолютно понятия не имею, как это построить.



Например: я хотел бы протестировать с 50 пользователями и выполнить метод webapi 100 раз в течение 6 минут.




  • Как предоставить JMeter несколько пользовательских данных?

  • Как построить этот протокол OAuth-как танцевать?


Есть идеи?

800   1  

1 ответ:

  1. предоставление различных учетных данных довольно легко, наиболее часто используемый элемент теста-это CSV Data Set Config , где вы можете хранить комбинации имени пользователя и пароля
  2. Вы можете добавить имя пользователя и пароль (а также code и т. д.) для запроса заголовков через HTTP Header Manager. Добавьте его в качестве дочернего элемента HTTP-запроса и заполните требуемыми именами и значениями заголовков. переменные JMeter, определенные в конфигурации набора данных CSV, также будут воспроизводиться
  3. Вы можете извлечь AccessToken из заголовки ответов с использованием экстрактора регулярных выражений
  4. предоставьте Заголовок Authorization через Диспетчер заголовков HTTP, как в пункте 2.

Comments

    Ничего не найдено.