Performance testing
Performance testing is a category of non-functional tests that check not whether a system works correctly, but how well it copes under load. They measure response time, throughput (requests served per second), CPU, memory and network usage, and the stability of the application when many users hit it at once.
How performance testing works
Within this broad category several scenarios are distinguished. A load test checks behaviour under expected production traffic. A stress test deliberately exceeds that threshold to find where the system breaks. A spike test simulates a sudden, sharp surge in traffic — for example, the start of a flash sale. A soak (endurance) test sustains load for many hours, revealing memory leaks and slow degradation. Key metrics include TTFB, the median and 95th-percentile response times, and the error rate under load. Traffic is generated with tools such as Apache JMeter, k6, Gatling or Locust, which simulate thousands of virtual users.
Practical application
Performance tests are run before a store's peak season launch, ahead of a marketing campaign that will drive heavy traffic, and after an infrastructure migration. Their results indicate whether you need a more powerful server, an extra caching layer, or traffic distribution through a load balancer. It is worth distinguishing them from measuring a single page in the browser — tools such as Lighthouse, GTmetrix or the Core Web Vitals metrics assess load speed and user experience, whereas classic performance testing examines how the whole backend behaves under load generated by many clients simultaneously.
Powiązane pojęcia
Najczęstsze pytania
What is the difference between a load test and a stress test?
A load test checks how the system behaves under expected, realistic traffic and confirms it stays within target response times. A stress test deliberately exceeds those limits to find the breaking point and to see how the system degrades and whether it recovers after failure.
