#json #web-services #rest #curl #jmeter
#json #веб-сервисы #rest #curl #jmeter
Вопрос:
Сценарий
- Сервер Heroku отправляет вызов веб-службы на Parse.com использование команды CURL. веб-сервисы написаны как Jason и используют REST.
- Мне нужно проверить производительность parse.com сервер для моего сайта в случае одновременного посещения его 40 пользователями
- Поскольку связь между сервером heroku и parse.com осуществляется через веб-службы REST Jason, поэтому я предполагаю, что мне нужно сгенерировать одновременные 40 вызовов каждой веб-службы, чтобы parse.com .
- Каждая команда Curl имеет один токен сеанса пользователя и некоторые параметры в заголовке, которые я настраиваю в HTTP-запросе Jmeter при генерации загруженного вызова веб-службы
- Мне нужно протестировать сценарий, в котором 40 одновременных пользователей одновременно создают проект (Create project также является веб-сервисом) на parse.com (Нет веб-службы для создания пользователей, но каждая команда curl имеет токен сеанса пользователя в качестве ключа каждого пользователя, зарегистрированного на веб-сайте)
Проблема: команда Curl для создания проекта на parse.com имеет один сеанс пользователя. Так что, даже если я введу значение 40 в потоке. Он создаст 40 проектов для одного сеанса пользователя. в то время как я хочу, чтобы 40 пользователей одновременно создавали 40 проектов.
Вот команда CURL с одним сеансом пользователя
curl -X POST -H "X-Parse-Application-Id: " -H "X-Parse-REST-API-Key:" -H "Content-Type: application/json" -H "X-Parse-Session-Token: l8beiq2zv6kf420nbno8k7or1" -d '{"projectType":"feedback","users":null,"ownerOnlyInvite":false,"topicName":"SERVICE UPDATE TOPIC","name":"SERVICE UPDATE","deadline":"2014/03/08","s3ProjectImageKey":"065D417C-EEAA-4E74-BB43-5BDCED126A58"}'
Вопрос:
Должен ли я использовать команду curl в Jmeter для нагрузочного тестирования или есть другая альтернатива для тестирования веб-служб REST Jason. Если я введу 40 токенов сеанса пользователя в заголовок HTTP при настройке HTTP-запроса в JMETER. Будет ли это 40 одновременных пользователей, создающих 40 проектов на parse.com ?
Ответ №1:
Этого можно достичь, выполнив шаги, указанные ниже:
- Используя CSV, поместите все токены сеанса, которые вы хотите использовать, в файл CSV. jmeter будет использовать 1 токен для каждого пользователя.
См.: http://ivetetecedor.com/how-to-use-a-csv-file-with-jmeter /
надеюсь, это поможет.
Комментарии:
1. Но в пользовательском интерфейсе нет поля, для которого я мог бы записывать данные, извлекая их из csv. Как насчет размещения токенов сеанса пользователя в качестве параметра в HTTP-заголовке HTTP-запроса?
2. не имеет значения, что есть в пользовательском интерфейсе, если ваш веб-сервис способен обрабатывать параметр.