What is Break-Point Test?
Application Break-Point Test helps to find out the breaking point of the application or server from performance testing perspective. This test is helpful to identify the maximum load-bearing capacity of the application. More likely some applications fail during stress test when the expected future load is applied on the server. If the servers are tuned enough and able to handle the future load then break-point performance test comes into the picture. It is an optional but recommended test. This test is also known as Fatigue Test.
How to determine the break-point load?
The break-point testing is a kind of negative testing where a performance tester loads the software with a large number of concurrent users/processes and tries to fail the server resources. The break-point test has a gradually increase workload pattern without any upper limit. Hence there is no user load NFR.
Purpose of Application Break-Point Test:
- Identify the break-point of the application
- Check the response time behaviour of the application at a different level of load
- Monitor the behaviour of the server resources
- Analyse which component fails first and why?
- Determine the impact of the failure on other systems
- Investigate the more tuning opportunities in the application
Break-point performance test has open non-functional requirements. The requirements are very generic in nature. There is no ‘Pass’ criteria for the break-point test due to its negative testing features. The NFR may have the description like:
- Perform the break-point test to identify the maximum load-bearing capacity of the application (no workload provided)
- Note down the response time pattern (no response time upper limit)
- Monitor the server resources etc.
A performance tester uses the load test or stress test script for break-point test. No need to create a separate script. He can also keep the same pacing and think time value for the break-point test.
Now, come to the test scenario part. The break-point performance test has a different workload model than others. As the main aim of this test is to break the system so the user load applies to the server is in ramp-up pattern. There is no steady state and hence a linear graph is formed.
In the above graph, the user ramp-up with a constant rate and a sudden fall comes in the graph. The point when users start ramp-down and reach to zero is the break-point of the application.
Tool Specific Setting:
Load Runner: While creating the test scenario, provide “Run until completion” as a test duration. Also, provide a large number for “Number of Iterations” attribute in the Run-time setting of the script.
On detecting the break-point, stop the test.
JMeter: Check “Loop Count” forever in thread group of JMeter and execute the test. On detecting the break-point, stop the test.