pm.sendRequest — мощная функция в Postman Sandbox, позволяющая выполнять дополнительные HTTP-запросы из pre-request или test-скриптов. Это полезно, когда нужно динамически получить данные во время выполнения теста.
Почему это важно:
🔘 Получение access-токенов или временных ключей перед выполнением основного запроса.
🔘 Вызов зависимого API и сохранение ответа для последующего использования.
🔘 Проверка отклика стороннего сервиса (например, email или webhook) в рамках одного сценария.
🔘 Имитация более сложных интеграционных сценариев без стороннего кода.
✅ Пример использования: получение токена и сохранение в переменной окружения
pm.sendRequest({
url: 'https://auth.example.com/api/token',
method: 'POST',
header: {
'Content-Type': 'application/json'
},
body: {
mode: 'raw',
raw: JSON.stringify({
username: 'testuser',
password: 'securepassword'
})
}
}, function (err, res) {
if (err) {
console.error('Ошибка при получении токена:', err);
return;
}
if (res.code === 200) {
const token = res.json().access_token;
pm.environment.set('authToken', token);
} else {
console.warn('Неожиданный статус:', res.code);
}
});
➡️ После этого можно использовать {{authToken}} в других запросах, например, в заголовке:
Authorization: Bearer {{authToken}}
Важно:
— pm.sendRequest асинхронный — убедитесь, что основной запрос не зависит от результата, если вы используете его в test-скрипте.
— Для критически важных сценариев лучше использовать Pre-request Script — тогда вы гарантируете порядок выполнения.
🐸 Библиотека тестировщика
#буст