0
votes

I am currently load testing login/logout function with max 2000 unique users and created a distributed test environment with 4 slaves and 1 master. We are able to successfully distribute traffic to all 4 slaves.

However, We do not want 4 slaves to use the same users during execution. We want to ensure each slave receive a unique set of test users in order to login to avoid any conflicts.

Scenario:
- Distribute test max 2000 login sessions using 2000 unique users over 1 hour (gradual increase)
- Master to distribute traffic to 4 slaves
- Each slave to receive or use a unique set of users to execute the test. Therefore there should be no conflict between users.

(user distribution,
Slave#1: Users 1 - 500
Slave#2: user 501 - 1000
slave#3: User 1001 - 1500
Slave#4: user 1501 - 2000
)

Our Jmeter version is 3.3 (Windows PCs)

How do we achieve this? your help will be appreciated.

Thank you Z

1

1 Answers

1
votes
  1. JMeter slaves execute the Test Plan (.jmx script(s) which they receive from the Master so in order to have 2000 different users you should use 500 users in your Thread Group (given there is a single Thread Group, if there are more - correspondingly less)
  2. If you use external data source, i.e. CSV file for storing user credentials you need to split it into 2 parts and upload them to remote slaves so they could be used by the CSV Data Set Config. An easier, unattended and scalable solution would be using HTTP Simple Table Server which has KEEP option, setting it to false will remove the credentials from the list therefore uniqueness will be guaranteed. You can install HTTP Simple Table Server plugin using JMeter Plugins Manager
  3. According to JMeter Best Practices you should always be using the latest version of JMeter so consider upgrading to JMeter 4.0 (or whatever latest version is available at JMeter Downloads page) as soon as possible