Spike Testing is a type of software performance testing that is done by suddenly increasing or decreasing the load on the system or software application. The load is generated by huge number of users and the behavior of the system is observed. The goal of spike testing is to determine whether the system will fail or survive in case of dramatic changes in load.
Objective of Spike Testing:
The objective of Spike Testing is:
- To evaluate the behavior of the system or software application under the load changed abruptly.
- To observe the performance of the system under abruptly changed load.
- To observe the system’s failure under extreme load.
- To determine the recovery time between two spikes.
Spike Testing Process:
- Test Environment Setup:
Firstly testing environment is set up to perform a successful test. It is set up to get a good quality testing process. - Determine Extreme Load:
After setting up the environment, the extreme load is found what a system can resist. Extreme load is the maximum number of users that can use the system or software application at a same time. - Increase Load to Peak:
Now the load on the system or software application is increased to the peak point. This process is performed abruptly i.e. suddenly the load is increased not gradually. - Analysis on Peak Point:
The behavior of system is observed under the load on the peak point. It is observed that whether the system crashes or survive under this sudden increased load. - Decrease Load to Zero:
From the extreme point suddenly the load is decreased to zero or minimum load possible. This process is also performed abruptly i.e. suddenly the load is decreased from peak value to minimum possible value. - Analysis on Minimum Load:
The behavior of system is observed under the minimum possible load. It is observed that whether the system crashes or survive under this sudden decreased load. - Performance Graph Analysis:
The performance graph of the system formed by abruptly increasing and decreasing the applying load, is analyzed. It is observed that what kind of spike is formed is formed.
Spike Testing Graph:
Spike Testing Tools:
All the performance testing tools can be used to perform the spike testing as the spike testing is a type of a performance testing but there some specific tools that are commonly used in spike testing. The commonly used spike testing tools are:
1. Loadrunner 2. Apache Jmeter
Advantages of Spike Testing:
- Spike testing helps in maintaining the system under the extreme load.
- Spike testing saves system or software application from crashing.
- It reduces the chances of failure for the system or software application.
Disadvantages of Spike Testing:
- Spike testing needs only experts to perform it.
- Spike testing is highly costly.