Подтвердить что ты не робот

Сохранение значения заголовка Postman в переменной по всем запросам в коллекции

Добрый день, Штабелеры,

Я пытаюсь автоматизировать свой тестовый пакет в Postman, так что мне не нужно вручную входить в каждый запрос и изменять это значение заголовка на то, что я изначально поставил в первый запрос.

В настоящее время мой тестовый набор выглядит так:

Первый запрос:

var headerValue = postman.setGlobalVariable('Number', headerValue);
console.log("Number is: " + headerValue);

Второй заголовок запроса:

Number - {{headerValue}}

Я бы ожидал, что headerValue будет иметь значение "Number", поскольку я установил его как глобальную переменную, но он возвращается как undefined. Я не уверен, что я делаю неправильно.

4b9b3361

Ответ 1

Вот как вы можете это сделать

Если Refresh_token - это значение заголовка

postman.setGlobalVariable("refresh_token",postman.getResponseHeader("Refresh_token") );

Официальная документация: https://www.getpostman.com/docs/postman/scripts/test_examples

Ответ 2

Нет, попробуй. Для почтальона, если вы хотите установить среду или глобальную переменную, просто используйте шаблон (ключ, значение) таким образом -

postman.setEnvironmentVariable(key,value) or   
postman.setGlobalVariable(key,value) 

и, наконец, возьмите их с помощью {{key}}

var headerValue = "your value goes here";
postman.setGlobalVariable('Number', headerValue);

и используйте {{Number}} в своем следующем заголовке запроса

Ответ 3

Кажется, что @Sai ответ больше не работает, так как getResponseHeader устарела. Обновленный код:

pm.test("First request", function() {
    let headerValue = pm.request.headers.get("Number")
    pm.globals.set("Number", headerValue);
});

Во втором запросе перейдите в раздел Headers, добавьте новый заголовок с Number в качестве ключа и {{Number}} в качестве значения.