Load Testing
Definition
Testing how well a system performs under expected user load. Like seeing how many people can fit in an elevator before it becomes uncomfortable.
Use Cases
- Netflix: Validate that streaming and supporting services can handle peak viewing periods and regional traffic spikes without degrading user experience. — Uses performance engineering practices and automated testing in its delivery pipeline, including running large-scale traffic simulations against services and validating scaling behavior and latency/error budgets before and after changes. (Improved confidence in releases and better resilience during demand spikes by identifying bottlenecks and scaling limits before they impact customers.)
- Shopify: Prepare the commerce platform for extreme seasonal demand (e.g., Black Friday/Cyber Monday) across storefronts, checkout, and backend services. — Runs performance and load tests ahead of major events to validate capacity, tune databases/caches/queues, and confirm autoscaling and rate-limiting behavior under realistic traffic patterns. (Reduced risk of outages during peak events and improved ability to sustain high transaction volumes with predictable performance.)
- Slack: Ensure messaging, presence, and file-sharing services remain responsive during rapid user growth and large enterprise rollouts. — Performs load and performance testing on critical APIs and real-time systems to find saturation points, validate horizontal scaling, and detect regressions in latency and error rates. (Fewer performance regressions in production and more predictable scaling as usage increases.)
Provider Equivalents
- AWS: AWS Distributed Load Testing
- Azure: Azure Load Testing
- GCP: Cloud Test Lab
- OCI: OCI Load Balancer
Frequently Asked Questions
- What's the difference between Load Testing and Stress Testing?
- Load testing checks performance under expected (normal-to-peak) usage, like 10,000 concurrent users during a sale. Stress testing pushes beyond expected limits to find the breaking point and see how the system fails and recovers.
- When should I use Load Testing?
- Use it before major launches, marketing campaigns, seasonal peaks (like Black Friday), or any change that could affect performance (new features, database changes, infrastructure migrations). It’s also useful as a regular check in CI/CD to catch performance regressions early.
- How much does Load Testing cost?
- Cost depends on (1) the tool or managed service fees, (2) how much load you generate (number of virtual users/requests per second and test duration), (3) where you run the load generators (compute, networking, and storage), and (4) the cost of the system under test scaling up during the test. Managed services often charge per test run, test duration, or virtual user hours, while self-hosted tools mainly cost the compute and networking you provision.
Category: software
Difficulty: intermediate
Related Terms
See Also