Measuring how well software performs.
WHAT THE TYPES ARE
- Load testing: behaviour at expected volume
- Stress testing: behaviour beyond it
- Soak testing: behaviour over extended periods
- Spike testing: behaviour under sudden surges
- Capacity testing: establishing the limit
WHAT SOAK TESTING FINDS
Memory leaks, resource exhaustion, and degradation over time.
WHY THAT MATTERS
Those appear only after hours or days, and never in short tests.
WHAT TO ESTABLISH BEFORE TESTING
What performance is required At what volume Under what conditions
WHY REQUIREMENTS FIRST
Without a target, results cannot be judged.
WHAT TO MEASURE
Response time, at percentiles Throughput Error rate Resource utilisation
WHY PERCENTILES RATHER THAN AVERAGES
Averages conceal the slow requests users notice.
WHAT PERCENTILES TO REPORT
The middle, the ninety-fifth, and the ninety-ninth.
WHAT THE NINETY-NINTH REPRESENTS
The experience of one request in a hundred, which at volume is many people.
WHAT TO ESTABLISH
A baseline, so regression is detectable.
WHAT TO RUN REGULARLY
Performance tests, not only before release.
WHY
Degradation accumulates gradually and is invisible without comparison.