1

I am doing Jmeter testing. My setup is:

thread group: 1
threads in group: 10
loop count: 5

I also have a csv data config file that contains:

usr1, passwd1
usr2, passwd2
usr3, passwd3
usr4, passwd4
usr5, passwd5

'Recycle on EOF' set to true, 'Stop Thread on EOF' set to false.

Then I read some article online (JMeter CSV Dataset Config: how to move through variables in the same thread?)

A couple of doubts:

  1. I think by setting 'Recycle on EOF' set to true, thread 1-5 will use username/passwd 1-5, thread 6-10 should reuse username/passwd 1-5. But I am wrong, thread 6-10 only get EOF as username/passwd and fail my test obviously, like the article suggest. But why?

  2. Then I set 'threads in group' to 5, problem in 1) is gone, thread 1-5 use username/passwd 1-5 for loop 1. But because loop count>1, I do not know when thread 1-5 finish their 1st round, what username/passwd they will pick for loop 2? Should thread 1-5 still use username/passwd 1-5 in that order always? My observation is that it's like a first come, first served thing, whichever thread finish loop 1 first will get username/passwd 1. Is that the expected behavior?

  3. For some reason, my test does not allow 2 threads to run using the same username/passwd at the same time. If what I describe in 2) is true, then I can have below timing situation:

a) thread 1 (use username/passwd 1)takes longest time

b) thread 5 (use username/passwd 5)takes shortest time

c) when thread 5 finish loop 1, it grab username/passwd 1 and run, at this moment, thread 1 loop 1 is still in progress, bad things happen...

So what configuration can I set to have all threads to wait for each other to finish the current loop, then start to run next loop together?

halfer
  • 19,824
  • 17
  • 99
  • 186
user1559625
  • 2,583
  • 5
  • 37
  • 75

0 Answers0