Types · Performance Testing 101

Types of Performance Testing

Each performance test type targets a specific load condition to uncover distinct system behaviors, from peak capacity validation to long-term endurance and sudden spike resilience.

01

Load Test

📈
Specific Load Condition
⚡ Peak Load

The highest expected user load based on production data, or predicted load for new applications.

Purpose
  • Verify app can handle peak load
  • Observe response time behavior at peak
  • Ensure CPU / Memory / Disk stay within limits
  • Identify bottlenecks under real-world peak conditions
  • Validate performance after code releases (regression)
02

Stress Test

🔥
Specific Load Condition
🚀 Future Load (> Peak)

A user load higher than peak load — based on historical growth trends, or 125%, 150%, 200% of peak if no historical data is available.

Purpose
  • Verify app can handle future projected load
  • Check response time above peak
  • Observe resource behavior under heavy strain
  • Find bottlenecks and weak components
  • Capture error rate & failure patterns at higher load
03

Soak Test (Endurance)

Specific Load Condition
🕐 Average Load · Long Duration

Calculated from historical usage patterns, or 50%, 60%, 75% of peak load if no data is available. Runs for many hours.

Purpose
  • Verify long-term stability & sustainability
  • Detect memory leaks
  • Observe Garbage Collector behavior
  • Identify performance degradation over time
  • Detect errors during prolonged execution
  • Ensure resources stay within limits for many hours
04

Spike Test

Specific Load Condition
💥 Sudden, Unexpected Spike

Load jumps instantly from base load to spike load. Base can be average or peak load. Spike types: Constant, Step-up, or Random.

Purpose
  • Evaluate handling of sudden traffic surge
  • Measure response time variation during spike
  • Determine failure rate & error types (500, 504)
  • Observe recovery time after spike
  • Identify bottlenecks under sudden load
  • Ensure resources don't exceed limits during spike
05

Break-Point Test (Fatigue)

💀
Specific Load Condition
📈 Continuously Increasing (No Limit)

User load keeps increasing until the system breaks. There is no upper limit, no steady-state — only continuous ramp-up.

Purpose
  • Find maximum load-bearing capacity
  • Identify the exact break point
  • Analyze response time at progressively higher loads
  • Monitor when resources hit saturation
  • Determine which component fails first & why
  • Identify further tuning opportunities

Consolidated Summary

Test Type Specific Load Condition Purpose
Load Test Peak Load Check performance at peak load, validate resource usage, detect bottlenecks
Stress Test Future Load (> Peak) Check behavior under heavy load, capture failures, validate future scalability
Soak Test Average Load (Long Duration) Detect memory leaks, GC issues, long-term stability, resource trends
Spike Test Sudden Spike Load Check behavior under abrupt traffic jump, response deviation, failures, recovery
Break-Point Test Continuously Increasing (No Limit) Identify max capacity, break point, first failing component, saturation point