Re: JMeter not passing set-cookie: XSRF-TOKEN in login

Dmitri T <[email protected]> Wed, 14 Feb 2024 06:27:25 +0100
Newsgroups gmane.comp.jakarta.jmeter.user
Message-ID <PH7PR12MB7139E448DEC4F08052EEB102C04E2@PH7PR12MB7139.namprd12.prod.outlook.com>
SivEng Orn wrote:
> I have 2 requests in my threadGroup after recording from Postman. One 
> is the head method for getting CSRF cookies. Second is for login.
> image.png
>
> Getting csrf-cookies request is success, but the login request fails 
> with 500 status internal server error. I checked the response header 
> of the login, it's missing one set-cookie: XSRF-TOKEN compared to the 
> postman. In postman both of my requests are successful. I don't know 
> why the login in JMeter is not working.
> I also add the CookieManager.check.cookies=false and 
> CookieManager.save.cookies=true to User.properties.
> I also tried to add ${COOKIE_XSRF-TOKEN} to my login header manager. I 
> also tried using regular expression to extract the XRSF-TOKEN from the 
> response header of csrf-cookie head method request and pass the value 
> to the login header manager. But none of them are working.
>
> Here is my test plan. I'm using JMeter 5.6.2
> image.png
>
> Any suggestions?

 1. I don't think HEAD
    <https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/HEAD>
    method will give you any cookies
 2. I don't think this is how real browser will work

So try switching from HEAD to GET 
<https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/GET> method 
and most probably it will be enough (given your other configurations are 
correct). If you want to mimic real browser's behaviour when it comes to 
handling embedded resources 
<https://www.blazemeter.com/blog/web-testing-jmeter> - just tick the 
relevant boxes under "Advanced" tab of the HTTP Request 
<https://jmeter.apache.org/usermanual/component_reference.html#HTTP_Request> 
sampler.

Remember to restart JMeter after any properties change otherwise it 
won't be applied.