jmeter-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Darius Damalakas <darius.damala...@gmail.com>
Subject Issue concurrent requests for a logged in user
Date Sat, 28 Dec 2013 14:32:05 GMT
Hi,

I have trouble figuring out how I should set up my test plan so that I
could test how my server responds to concurrent requests by same user.
These will be AJAX requests, but for simplicity lets just take that
multiple HTTP Get will be used.

I have tried several options, but none of them so far seem to accomplish
this.  Note that we do have a policy that a user can have only a single
session. So, if a user tries to login again, the previous sessions get
discarded, and a new session token issued and sent back as a cookie.

So far i've tried several options.


1.  This will generate sequential requests, not concurrent

Cookie manager as global
-- Thread group (1 thread, loop count 5)
---- Once Only Controller
------ Load Login page
------ Extract CSRF token
---- Post username/passw/csrf token
---- Sample HTTP Get

2.  Same test plan as above, just add more threads.
That dosn't work because a single user can have just 1 active session. So
the last thread wins and invalidates all the other threads.

3. Have a setup ThreadGroup.

CookieManager
--SetUp ThreadGroup
----Login, save cookie, etc
--Main thread group (5 threads)
---- Sample HTTP GET

This would work, but individual threads have separate cookie storages. So
this means that main thread will fail with unauthorised requests, since
auth cookie will not be transfered from setup thread.

I was thinking of having 2 cookie managers, one in set up thread, the other
in main thread. If it's possible to cop over auth cookie from one cookie
manager to the other, this plan would work.

Tried to make this work by setting 'CookieManager.save.cookies=true', but
inspecting variables with Debug Sampler looks like variables are not shared
between thread groups.

Any alternatives?

Darius,














Darius

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message