Thursday, July 25, 2013

Performance Testing

Definition: Performance testing is in general testing performed to determine how a system performs in terms of responsiveness and stability under a particular workload.

Performance Testing is done to determine the software characteristics like response time, throughput or MIPS (Millions of instructions per second) at which the system/software operates.

Performance Testing is done by generating some activity on the system/software, this is done by the performance test tools available. The tools are used to create different user profiles and inject different kind of activities on server which replicates the end-user environments.

The purpose of doing performance testing is to ensure that the software meets the specified performance criteria, and figure out which part of the software is causing the software performance go down.


The focuses of Performance testing are:

Speed – Determines whether the application responds quickly.
Scalability – Determines maximum user load the software application can handle.
Stability – Determines if the application is stable under varying loads.

Types of Performance Testing

Load Testing: A load test is usually conducted to understand the behavior of the system under a specific expected load. This load can be the expected concurrent number of users on the application performing a specific number of transactions within the set duration.

Stress Testing: This kind of test is done to determine the system's robustness in terms of extreme load.

Endurance Testing (Soak Testing): During this type testing, memory utilization is monitored to detect potential leaks.

Spike Testing: Spike testing is done by suddenly increasing the number of users by a very large amount or load generated by users and observing the behavior of the system.

Performance Testing Process



No comments:

Post a Comment