Performance Testing

What is performance testing?

Performance testing is the process of determining the speed or effectiveness of a computer, network or software program or device.

This process can involve quantitative tests done in a lab, such as measuring the response time or the number of MIPS (millions of instructions per second) at which a system functions. Qualitative attributes such as reliability, scalability and interoperability may also be evaluated. Performance testing is often done in conjunction with stress testing.

Performance Process

Difference between load and stress testing and volume testing

Volume Testing = Large amounts of data
Volume testing: This is done to test how the system handles when there is a need for huge volumes of data.

Load Testing = Large amount of users

Load testing: Here we apply more users or transactions and check where the max limit at which we can get optimal performance is. The intention of this is to find the optimal limit and not to break the system

Stickmen lifting bar for graph

Stress Testing = Too many users, too much data, too little time and too little room

Stress testing: Here we apply more no of users or no of transactions than prescribed with varying resources (ram, bandwidth etc.) and check where the system cannot handle that much load.

The intention of this is to break the system.
Stress 1