• Baseline Testing – Less users than we expect in production. This is like when manual testers perform a user scenario and use a stopwatch to time it. It could also be an automated load test where we are using less than the expected number of users to generate load. This will be normally done to get the response time of the application when SLA is not given.
  • Load Testing – Testing is aimed at assessing the performance of the system when it is placed under specific loads, usually from low, normal or peak load conditions.
  • Stress Testing – Testing is aimed at assessing the performance of the test item when it is pushed beyond its anticipated peak load, to determine how it behaves under extreme load.
  • Stability / Endurance Testing / Soak Testing – Testing is aimed at assessing whether the test item can sustain the required load for a continuous period of time.
  • Spike Testing – What happens to your system when the users are suddenly increased with fewer ramps up time, just to check if system is able to handle increase in user load for short time frame
  • Volume Testing – Testing is aimed at assessing the performance of the test item when it is processing specified levels of data. For example, this may include assessing test item performance when its database is nearing maximum capacity.
  • Configuration testing – Rather than testing for performance from the perspective of load, tests are created to determine the effects of configuration changes to the system’s components on the system’s performance and behaviour. A common example would be experimenting with different methods of load-balancing.
  • Scalability Testing / Capacity Testing – Test the ability of a system, a network, or a process to continue to function well, when it is changed in size or volume in order to meet a growing need. It is the testing of a software application for measuring its capability to scale up in terms of any of its non-functional capability like load supported, the number of transactions, the data volume etc.