I am trying to automate my test suite in Postman so that I don't have to manually go into each request and change that header value to what I initially put in the first request.
My test suite currently looks like:
First Request:
var headerValue = postman.setGlobalVariable('Number', headerValue); console.log("Number is: " + headerValue);
Second Request Header:
Number - {{headerValue}}
I would expect headerValue to have the value of 'Number' since I have set it as a global variable but it is coming back as undefined. I'm not sure what I am doing wrong.
Postman will automatically add certain headers to your requests based on your request selections and settings. Select hidden at the top of the headers tab for information about what Postman will send with your request. Hover over a header for details about it. Postman will indicate why the header has been added.
' In the request URL section, a dynamic variable should be written in {{__}} format. Let's say you have to pass an integer number from 1 to 1000, so for that, you need to add {{$randomInt}}. Like the above example of the number variable, Postman supports so many other dynamic variables as well.
This is how you can do this
If Refresh_token is the header value
postman.setGlobalVariable("refresh_token",postman.getResponseHeader("Refresh_token") );
Official Documentation: https://www.getpostman.com/docs/postman/scripts/test_examples
It seems like @Sai's answer does not work is not recommended anymore, since getResponseHeader
is deprecated now. The updated code is:
pm.test("First request", function() { let headerValue = pm.response.headers.get("Number") pm.globals.set("Number", headerValue); });
In the second request go Headers
section, add a new header with Number
as a key and {{Number}}
as a value.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With