Использование Postman runner для вызова API n раз для тестирования производительности

Я пишу новый API и хочу видеть, как он работает при выполнении n запросов.

Я попытался настроить переменные среды и использовать инструмент runner в Postman, но безрезультатно.

Конечная цель - запустить его n раз, при этом я передаю значение [n] в тело, чтобы я мог проводить аудит (значение этого поля хранится в базе данных).

Я установил 2 переменные среды

company=Bulk API Test
requestcount=0

Мой сценарий предварительного запроса

let requestCount = +postman.getEnvironmentVariable("requestcount");
if(!requestCount)
{
    requestCount = 0;
}

requestCount++;
postman.setEnvironmentVariable("requestcount", requestCount);

Что должно каждый раз обновлять переменную среды requestcount до +1.

Мой тестовый сценарий

var currentCount = +postman.getEnvironmentVariable("requestcount");
if(currentCount < 5) // want it to run 5 times
{
    postman.setNextRequest("https://snipped");
}
else
{
    postman.setNextRequest(null);
}

Когда я запускаю его через бегун, это занимает намного больше времени, чем выполнение без бегуна, и в результате API срабатывает только один раз.


person andrewb    schedule 27.05.2019    source источник


Ответы (1)


Если ваш вызов API всегда один и тот же, попробуйте просто использовать счетчик итераций почтальона. Просто введите туда, например 5. И ваш сбор будет повторен 5 раз.

введите здесь описание изображения

Можно получить доступ к итерации по следующему свойству:

pm.info.iteration

чтобы узнать, какая это была итерация.

Если вам все еще нужно изменить переменные, убедитесь, что они обрабатываются как целые числа.

var currentCount =+ parseInt(postman.getEnvironmentVariable("requestcount"));

Честно говоря: лучший способ для этого сравнительного теста - использовать инструмент нагрузочного тестирования, например Loadrunner вместо Postman.

person DieGraueEminenz    schedule 28.05.2019
comment
Да, но мне нужно, чтобы переменная изменялась (увеличивалась на 1) между каждым запуском / итерацией - person andrewb; 28.05.2019
comment
@adrewb Я также добавляю подсказку для анализа целых чисел. Вы должны преобразовать свое значение в целое число, если вы загружаете его из env или глобальных переменных. Это необходимо, потому что почтальон хранит все как строку в переменных env и global. - person DieGraueEminenz; 28.05.2019