What is the difference between a load test, a stress test and a soak test?
Foundation A load test holds the expected peak and asks whether the system meets its targets there. A stress test pushes past the expected peak until something gives, to find where the limit is and how the system behaves when it is crossed — degrading politely or falling over. A soak test holds a modest, realistic load for hours, looking for the things that only appear with time: memory leaks, connection pools that never return, log volumes, database bloat. Different questions, so different durations and different pass criteria.
What they are really asking: Whether you pick a test type from the question being asked, or run "a load test" by reflex. Say what each one would *tell* you and most interviewers stop there.
Why report percentiles rather than the average response time?
Foundation The average hides the tail, and the tail is what users complain about. A run averaging 200 ms can be 95% of requests at 90 ms and 5% at 2.3 seconds — the average looks healthy and one user in twenty is having a bad time. Percentiles describe the distribution: p90, p95 and p99 tell you what the slowest slice actually experienced. Quote the percentile alongside the load it was measured at, because a p95 with no context is a number, not a result.
What they are really asking: The follow-up is usually "so which percentile should we use?" There is no universal answer, and saying p95 with confidence is a worse answer than asking what the SLA says.
Writing performance requirements that can be tested
What is Little's Law and how do you use it in performance testing?
Experienced Concurrency = throughput x response time. If you need 50 requests per second and each takes 400 ms, you need about 20 concurrent users to generate it. It is the arithmetic that connects a business target ("2,000 orders an hour") to a load model ("this many virtual users with this think time"). It also catches nonsense early: if your target throughput and your measured response time imply 4,000 concurrent users and you planned for 50, one of those numbers is wrong.
What they are really asking: Whether you can derive a load model rather than guessing a thread count. Being able to do the sum out loud is worth more than naming the law.
Free load model calculator
What is think time and why does it matter?
Foundation Think time is the pause a real user takes between actions — reading a page, filling a form. Without it, virtual users hammer the system in a tight loop and you measure something no human would ever do: far higher throughput from far fewer users. Adding realistic think time changes the concurrency you need to hit a given throughput, which is why load models built without it are usually wrong in both directions at once.
What they are really asking: A common trap question. If you say "it makes the test realistic" and stop, expect "realistic how?" — the concrete answer is that it decouples user count from throughput.
What makes a performance requirement testable?
Experienced A number, a condition, and a scope. "The site must be fast" is not testable. "The checkout page returns in under 1.5 seconds at p95, with 500 concurrent users, over a 30-minute steady state" is: it names the transaction, the statistic, the threshold, the load and the duration. If any of those is missing you cannot write a pass criterion, and you will end up in a meeting arguing about whether the result was good.
What they are really asking: Really asking whether you push back on vague requirements or quietly invent your own and hope nobody notices at report time.
Questions to ask before a performance test