Performance Testing is a non-functional testing technique performed to determine the quality attributes of the system such as speed, stability, reliability, scalability, response time, and resource usage of a software application under a particular workload.
The goal is to measure and improve the performance of the system. It examines multiple indicators such as browser, page, and network response times, server query processing time to help identify software performance.
Types of Performance Testing -
1. Load Testing -
Objective - To identifies performance bottlenecks before the software application goes live.
It checks applications' ability to perform under anticipated user load. The performance of the software by constantly increasing the load on the system until the time load is reached its threshold value. A test load enables the tester to measure response times, resource utilization level and identifies the application’s breaking point.
2. Endurance Testing -
Objective - To identifies the break-point of the application over a longer period of software run.
3. Stress Testing -
Objective - To identifies the break-point of the application under the extreme workload.
Measure the system performance under the extreme workload. This procedure ensures that the system can sustain the stress. It evaluates the resilience of the system beyond normal operating points and checks how the software works under extreme conditions.
4. Volume Testing (also referred to as flood testing) –
Objective - Measure the performance bottlenecks of the software with large data volumes in the database.
The database is stretched to a threshold point by adding huge volumes of data and then the response of the system is recorded. It measures software performance under varying database loads.
5. Spike Testing -
Objective - To record the system's performance and response to a sudden large load spike.
6. Scalability Testing -
Objective - To measure the system's effectiveness in calling up to support an increased load.
Performance testing tools
Some of the prominent performance testing tools in the market are -