#javascript #postman #postman-collection-runner #newman
#javascript #почтальон #postman-collection-runner #ньюман
Вопрос:
Я пытаюсь провести некоторое нагрузочное тестирование. Я использую newman в nodejs. В моем скрипте у меня есть async.parallel для параллельного выполнения нескольких коллекций. Затем повторяйте набор параллельных исключений каждые 5 секунд. При каждом запуске у меня есть следующие параметры:
collection: require('./collection.json'),
environment: require('./environment.json'),
timeoutRequest : 0, // infinite timeout
delayRequest: 1000, // ms
iterationCount: 5
Основной цикл выглядит так:
async function sleep(ms) {
return new Promise(done => setTimeout(() => done(), ms));
}
async function orchestrator() {
for (let j = 0; j < cycles; j )
{
async.parallel(runItems,
function(err, results) {
if (err) {
throw err;
}
}
);
await sleep(5000);
}
Последние 3 строки вывода:
code: ‘ERR_SCRIPT_EXECUTION_TIMEOUT’
}
Process exited with code 1
Я установил циклы на 500. Все идет хорошо в течение более 70 циклов, но затем я получаю указанную ошибку.
У вас есть решение или какая-то работа, которую я могу сделать?
Ответ №1:
Вероятно, это ошибка либо в том, как Newman применяет значения таймаута по умолчанию, либо в том, как они документируются.
Вот как это должно работать (источник):
В двух словах, поведение тайм-аута выглядит следующим образом:
timeout
: Это значение глобального тайм-аута, время в миллисекундах для завершения всего запуска коллекции.timeoutRequest
: Аналогично приведенному выше, но это значение применяется индивидуально ко всем запросам при выполнении сбора.timeoutScript
: Аналогично приведенному выше, но это значение применяется индивидуально ко всем скриптам в запуске коллекции.Для любого из 3 приведенных выше значений конфигурации указание значения 0 приведет к тому, что время ожидания будет установлено на бесконечность.
Мои выводы до сих пор:
- Я столкнулся с
Script execution timeout
ошибкой при запуске Postman 5.2.2 CLI с настройками по умолчанию. Здесь обнаружена проблема - На основе этого комментария
99999
может помочь настройка значений тайм-аута.