Load and performance testing analyzes software intended for a multi-user audience by subjecting the software to different numbers of virtual and live users while monitoring performance measurements under these different loads. Load and performance testing is usually conducted in a test environment identical to the production environment before the software system is permitted to go live. It helps to identify the maximum operating capacity of an application as well as any bottlenecks and determine which element is causing degradation. E.g. If the number of users are increased then how much CPU, memory will be consumed, what is the network and bandwidth response time.
Identify performance acceptance criteria:
This is the most valuable aspect in the load testing life cycle, and therefore should be recorded and available for review and evaluation.
This refers to the time taken for one system node to respond to the request of another. It is a difficult thing for load testing tools to deal with as they generally have no concept of what happens within a node apart from recognizing a period of time.
If a system identifies end-users by some form of log-in procedure then a concurrency goal is highly desirable. If the system has no concept of end-users then performance goal is likely to be based on a maximum throughput or transaction rate.
Maximum user load:
The objective here is to determine the maximum users that can access the application at a specific hardware configuration.
Internet speed and Peak usage time:
Website performance over various connection speed e.g. modem, lease-line etc.
Create a workload model:
This will determine the characteristics of the key scenarios based on our key user group.