Controllers
Controllers can be divided into two broad categories:
- Samplers
- Logical Controllers
Samplers
Samplers are the components which allow JMeter to send specific types of requests to a server.It simulates a user’s request for a page to the target server.
Samplers are a must to add component to a test plan as only it can let JMeter know what type of request need to go to a server. Requests could be HTTP, HTTP(s), FTP, TCP, SMTP, SOAP etc.
Given below is the list of requests serviced by JMeter samplers:
- FTP Request
- HTTP Request (can be used for SOAP or REST Webservice also)
- JDBC Request
- Java object request
- JMS request
- JUnit Test request
- LDAP Request
- Mail request
- OS Process request
- TCP request
JMeter samplers can only be added to a thread group through the method shown in the figure below:
The following image shows an HTTP Request Sampler Control Panel:
Logical Controllers
Logic Controllers help you to control the flow the order of processing of samplers in a thread. It can also change the order of requests coming from their child elements.
Following is the list of all Logic Controllers in JMeter:
- Runtime Controller
- IF Controller
- Transaction Controller
- Recording Controller
- Simple Controller
- While Controller
- Switch Controller
- ForEach Controller
- Module Controller
- Include Controller
- Loop Controller
- Once Only Controller
- Interleave Controller
- Random Controller
- Random Order Controller
- Throughput Controller
The following image shows how you can add a ForEach Logic Controller to your test plan:
The following image shows a ForEach Controller Control Panel: