Virtual User (VU)

Performanceintermediateaka VUaka Virtual User

// Definition

A simulated user in a load test — an independent thread that follows a scripted journey (log in, browse, check out) with its own session and think-time, mimicking one real person's load. "1,000 VUs" means a thousand concurrent simulated journeys. VUs are the unit you scale to model traffic.

// Why it matters

Virtual users are how QA expresses load realistically — modelling 1,000 journeys (each with think-time and varied data) is far truer than firing 1,000 identical requests. QA cares because getting VU behaviour right (concurrency, pacing, data variety) is the difference between a load test that predicts production and one that proves nothing.

// How to test

VUs are configured in the load tool (k6 example, conceptually):
  • each VU runs the full scripted journey, not a single request
  • give VUs think-time between steps (real users pause; back-to-back is unrealistic)
  • vary each VU's data (different accounts/items) to defeat caching
  • ramp VUs up gradually to model arrival, then hold at target concurrency

// Common mistakes

  • VUs that fire requests with no think-time (unrealistic, overstates capacity)
  • All VUs using identical data (all cache hits — unrealistically fast)
  • Confusing VUs (concurrent journeys) with requests-per-second (a throughput measure)

// Related terms