In order to achieve the best from your performance tests, you can combine few testing types that available under the term of “Performance”, a good and effective combination will lead to better and more precise results.
Please note, that for this post I will list each type of test, with a very short description (but I promise to create a dedicated article for each one of themJ).
Types of Performance tests
Testing the software with sudden overloads, the main goal is validate that the software can handle situations where there is a sudden jump in the user activity.
Reliability / Endurance / Soak Tests
Testing the system with different load for a long period of time, the main goal is to see that the system can handle sustained use for a long period of time.
Testing the software with increasing set of data (Near to the software limitation), the main goal is to see that the software can handle such loads without having any side effects (unexpected crushes, memory leaks, bottlenecks Etc.).
Testing the software performance while increasing the volume of users/environment and determine how the software will adjust to the growing scale.
Stress Tests – testing the software under load that exceed the system limitation, the main goal is to cause system failures , analyze the crash, and determine the way that the software recover in case of such failure.
Testing that the software corresponding to failures while involving two or more physical nodes, in this type of tests, we need to validate that in case of failure the users can continue with their work and the application data/services are moved to the available “Active” node.
Testing the application redundancy mechanism in case of load, the main goal is to determine the effectiveness of the balancing system.
Testing the application with different amount of data, the main goal here is to understand the limits of our application and demonstrate how a specific amount of data can affect the predefined requirements.