---
title: "Performance testing"
description: "Performance testing measures a system's speed and stability under load. Learn load, stress and spike tests, key metrics and tools like JMeter and k6."
url: "https://nodea.io/en/glossary/performance-testing"
lang: "en"
updated: "2026-07-13"
---

# Performance testing

> Performance testing is a family of tests that evaluate how fast and how stably a system behaves under a given load — measuring response time, throughput and resource usage rather than logical correctness.

**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](https://nodea.io/en/glossary/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](https://nodea.io/en/glossary/load-balancer). It is worth distinguishing them from measuring a single page in the browser — tools such as [Lighthouse](https://nodea.io/en/glossary/lighthouse), [GTmetrix](https://nodea.io/en/glossary/gtmetrix) or the [Core Web Vitals](https://nodea.io/en/glossary/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.

### 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.

## Related

- [GTmetrix](https://nodea.io/en/glossary/gtmetrix)
- [Lighthouse](https://nodea.io/en/glossary/lighthouse)
- [TTFB](https://nodea.io/en/glossary/ttfb)
- [Core Web Vitals](https://nodea.io/en/glossary/core-web-vitals)
- [Load balancer](https://nodea.io/en/glossary/load-balancer)

---

Languages: [pl](https://nodea.pl/pl/slownik-pojec/testy-wydajnosciowe.md)  
Site index: [llms.txt](https://nodea.io/en/llms.txt)
