Session/cookie management in Apache JMeter

Solution 1:

Copied from jmeter documentation:

The last element is a HTTP Cookie Manager . A Cookie Manager should be added to all web tests - otherwise JMeter will ignore cookies. By adding it at the Thread Group level, we ensure that all HTTP requests will share the same cookies.

From chapter "4.2.2 Logic Controllers" in http://jmeter.apache.org/usermanual/test_plan.html.

EDIT: I guess you should use http://jmeter.apache.org/usermanual/component_reference.html#Simple_Controller to group your requests together with Cookie Manager.

Solution 2:

I think that Andrey's answer cannot help. He quotes that each request will use the same cookies BUT according to jmeter manual:

Each JMeter thread has its own "cookie storage area".

As far as I understand the question, you want each thread to share the same session ID cookie. So it seems to me you need to have two thread groups and execute them consecutively. First thread group (with a single thread that executes once only) should login and save the session cookie value to a global parameter (perhaps you need to use jmeter's scripting capabilities). Then set that cookie in the cookie manager of the second thread group.

Hope that helps.

Solution 3:

Try to increase the ramp up time. I ran into the same issue where the ramp up time was about 1 second then I increased it to 3 seconds per thread and it ran fine.