Stability testing is the type of non functional testing which is performed to measure efficiency and also ability of a software appliance to continuously function over a long period of time. The main goal of stability testing is checking if the software application crashes or fails over a normal use any point of time by exercising its full range of use.
Stability testing is used to check efficiency of a developed product beyond normal operational capacity as a breakpoint. The greater importance is on error handling, software reliability, robustness and scalability of any product in which heavy load rather than checking the system behaviour under normal circumstance. Stability testing assesses stability problems. This testing is primarily intended to stress the software components to the maximum. It is considered as non functional testing technique.
What are the different problems if the system under test has not undergone stability testing?
An application under test where a large number of users are introduced and applications that have to run for months without restarting, a number of problems which are likely to occur.
There are many problems which may occur:
- The system slows down
- The system which encounters functionality problems
- Here the system crashes
Why we do stability testing?
Stability testing helps us to understand the ways the system will work in real-life situations. So stability testing allows:
- Provide confidence in the stability of the system which is under test.
- It makes sure that our system which can handle large programs.
- It monitors the effectiveness of our system.
- Test system stability which is under stress.
A common example of stability testing is:
Online Shopping portal: stability testing will check how the website will behave under below scenarios:
- High amount of data entered at peak time
- Number of hits at a certain specific time
- Page load issues at the same time
- Behavior of the system
- Responsiveness of the system and
many more which comes under the stability testing.
CPU stability test is one of most important process of testing which assess the performance of the processor assessing the quality and speed of the processor. Suppose if a processor develops errors, the system before any crash the customer will be frustrated while using the system. CPU stability testing is very important factor for any manufacturer who wants their customer to be satisfied, as computers are multiprogrammed.
How we can do stability testing?
We can determine the scope and objective of the stability testing. We must make sure that the application server will not crash during the load test executions.
- Determine the business issues, verify the system performance and load per end user perspective.
- To assign the various responsibility and roles like creating test plan, test case design, test case review, test execution.
- To make sure the deliverables within the specified time.
- To make sure the proper load testing tools and experience team is present for the same.
- It measures the risk and cost involves in the testing.
This will determine the cost of each execution in terms of CPU utilisation and memory.
Different Test reports for stability testing:
- IT verifies the upper limit of the system.
- How system crashes or recovers.
- A total number of transactions response stays steady or increases over time.