Evaluating performance of an application is always a key factor particularly if the application is used by high number of users. In order to evaluate how good/bad application works, we need to conduct different kinds of performance test execution. If you like to read basics of performance testing and its importance, then go through this article about Performance Testing Introduction. In this blogpost Iam including different types of performance testing conducted to evaluate an application performance, stability, scalability, durability etc.

Below mentioned are the most common types of performance testing.

  • Load Testing
  • Endurance Testing/Soak Testing
  • Spike testing
  • Stress Testing
  • Volume Testing
  • Scalability Testing
  • Failover testing

load testing

Load testing is to evaluate how an application perform for a specific user load. Ideally in a load test, an identified number of virtual users performs a set of transactions (user flows) or Api’s requests and evaluates the application performance in terms of its response time, resource usages like CPU, memory and other performance criteria. User load decided based on the current production load. For a new application its calculated based on competitor business volume. A load test ideally runs for 1 or 2 hours.

endurance testing/soak testing

An applications performance for a longer duration evaluated in endurance testing. In a load test, an application performance evaluated for few hours. Here we are not getting an overview of its performance for a longer duration. Performance bottlenecks related to resource usage comes up while we do a testing for a longer duration. For example, out of memory errors due to high memory utilization mostly identified by running an endurance test. Ideally any execution running more than 5 hours can be an endurance test.

Spike testing

A spike testing is done by a sudden increase or spike in load and conducted to see the application performance due to sudden increase in the load. This type of testing is usually benefited if we need to keep our application ready for any kind of unexpected spike in load.

stress testing

In Stress testing , an application stressed by putting a higher load. It is conducted to identify application breakpoint. Applications reliability, stability and resilience are evaluated by running this test with higher load beyond the benchmarked limits of the application.

volume testing

In volume testing, a high volume of data pushed into system to evaluate its performance. High volume data generally pushed using a batch job for doing a volume testing.

scalability testing

An application scalability measured by conducting scalability testing. Its ability to scale up or down by an increase or decrease in load can be measured by conducting scalability testing. Scalability testing results used in capacity planning.

failover testing

Failover testing conducted to identify applications availability during any kind of region failovers or outages. The results used in taking steps in increasing application availability.

You may also like….

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *