What is Load Test?
Load Test is a type of non-functional test which verifies the performance of an application or system under a peak load condition. Load Test also validates the resource usage, stability and reliability of the software system under peak load.
What is Peak Load?
Peak Load is the highest load identified during a day, a month or a year depends upon the production data selection criteria. To understand the peak load refer to the below graph.
This graph shows the number of active customers per day in the month of Jun. The highest number of active customers is 927 on 30th Jun. Hence 927 is the peak load for the load test.
For new application: Since a new application does not have any production data, so peak load needs to be predicted. The client or project business analyst (BA) confirms the expected peak load on the application. A performance tester can use the expected peak load to prepare the workload model for the load test.
Purpose of Load Test:
- To Identify whether the application can handle the peak load
- Observe the behaviour of the application in terms of response time
- To check whether the resources (CPU, Memory and Disk) do not breach the defined performance limit
- To identify if there is any bottleneck
Load Test is also conducted in a regression manner to identify the performance issue due to the weekly, fortnightly or monthly code releases.
NFR document has some separate set of NFRs for the load test. These NFRs are related to the count of peak user load, response time, transactions per second etc. A performance tester designs the workload model using these NFRs and executes the test. Ideally, the duration of the load test is 1 hour (excluding ramp-up and ramp-down period). A typical load test user graph is:
This load test graph has a steady state of 1 hour along with 10 minutes ramp-up and 10 minutes ramp-down period. Therefore the test will run for 1 hour and 20 minutes. After completion of the test, a performance tester verifies the result against the defined load test NFRs.