JMeter
01 / 02

Thread Groups, Samplers & Config Elements

Thread Groups, Samplers & Config Elements

Thread Group — Simulating Users

Defines the pool of virtual users: number of threads, ramp-up period (time to start them all — 100 threads over 50s ≈ 2/sec, avoiding an unrealistic instant spike), and loop count (how many times each thread repeats the sequence; "infinite" runs until manually stopped or a duration limit is hit — for soak testing).

Samplers — Sending Requests

HTTP Request is the most common sampler; JMeter also supports FTP, JDBC, SOAP/XML-RPC, TCP, and more — a general-purpose load testing tool, not web-only.

Config Elements — Shared Setup

HTTP Request Defaults sets a shared hostname/port once instead of repeating it on every sampler. CSV Data Set Config feeds a different row of real, varied data (usernames, search terms) per iteration — using identical hardcoded data on every virtual user produces unrealistically-cached, non-representative results.

Timers — Realistic Think Time

Adds a configurable delay between requests, simulating the pause a real user takes between actions — without it, a test fires requests unrealistically faster than real traffic ever would.

Controllers vs. Samplers

Logic Controllers (Simple, Interleave, Loop) organize execution flow/order of samplers — grouping or alternating requests — without themselves sending anything, distinct from Samplers which actually generate requests.

Keep your own version of these notes — editable, searchable, and organised by your stack.

Start free