How to Perform Distributed Testing Using JMeter?
Distributed testing uses multiple systems to perform stress testing. Distributed Testing can be used for testing server applications and web sites, especially when they deal with multiple clients simultaneously. This uses the client-server model. The client-server model includes:
- Master: It is the system that runs the JMeter GUI and controls each slave.
- Slave: It is the system that runs JMeter Server. It receives commands from the Master and sends request to the Server under test.
- Target: It is the web server under test. It gets the request from slaves.
- The system firewall should be turned off. In case the firewall blocks the traffic, you should disable the firewall.
- Systems should be on the same subnet. System on the same subnet will be able to identify each other.
- Use the same version of JMeter to avoid any issues.
- Execute the”jmeter-server.bat” file by going to the jmeter/bin directory on the slave systems.
- Assume the IP address of the slave machine as: 168.0.10
- Edit the jmeter.properties file by going to the /bin directory on the master systems.
Run the Test
- Run JMeter GUI on the master machine and open the test plan.
- From the Menu bar, click Run. SelectRemote start -> select the IP address of the slave machine
In case you are unable to run the test from machine, you can ask the owner of the slave machine to run the jmeter-server.bat file.
- Some of the basic limitations of distributed testing are mentioned below.
- Client and Server must be on the same subnet.
- Target Server must have large processing power; else it will easily get overloaded with multiple requests.
- A single JMeter can handle only a limited number of threads (100-300)
- The distributed JMeter tests are complex.