Endurance testing, Recovery testing ,Scalability testing and Volume Testing Explained
This article will present you with a complete idea about Endurance testing, Recovery testing ,Scalability testing and Volume Testing.
We will learn below topics in this article
- What is Endurance Testing?
- Benefits of Endurance Testing
- Drawbacks of Endurance Testing
- What is Recovery Testing?
- Steps involved in Recovery Testing
- Benefits of Recovery Testing
- Drawbacks of Recovery Testing
- What is Scalability Testing?
- Goals of Scalability Testing
- Scalability Testing attributes
- What is volume Testing
- Goals of Volume Testing
- Benefits of Volume Testing
Endurance testing involves testing a system with a significant load extended over a significant period of time, to discover how the system behaves under sustained use and ensure application capability to handle extended load with abnormal behavior.
Endurance Testing is also known as Soak Testing.
For example, in software testing, a system may behave exactly as expected when tested for 1 hour but when the same system is tested for 3 hours, problems such as memory leaks cause the system to fail .
Benefits of Endurance Testing:
- Endurance Testing determines system load under extended load.
- Endurance Testing provides accurate data for further enhancement of infrastructure needs.
- Endurance Testing identifies performance problems if any.
- Typical issues are identified in smaller targeted performance tests.
Drawbacks of Endurance Testing:
- Difficult to determine the stress to be applied for testing.
- Some application components may disrupt due to load.
- Unhandled exceptions may be observed by the end user.
Recovery testing is done in order to check how fast and better the application can recover after it has gone through any type of crash or hardware failure.
- Recovery testing is the forced failure of the software in a variety of ways to verify that recovery is properly performed.
- Recovery Testing activities might include: Power interruption, to the client while doing CURD activities.
- Invalid database pointers and keys Database process are aborted or prematurely terminated.
- Database pointers, fields and keys are corrupted manually and directly within the database.
- Physically disconnect the communication wires, power turn off, turn down the routers and network servers.
Steps involved in Recovery Plan:
- Determining the feasibility of the recovery process.
- Restoration process:Verification of the backup facilities.
- Proper Documentation:Ensuring proper steps are documented to verify backup facilities.
- Training Process: knowledge transfer and trained team members.
- Demonstration of recovery process in order to recover from any critical failures.
- Maintaining and updating the recovery plan on regular intervals.
Benefits/Advantages of Recovery Testing :
- Recovery Testing improves system quality by removing the potential flaws.
- Recovery testing is also referred to as Disaster Recovery Testing.It is a back up plan to recover from the failure.
- Risk elimination by detecting potential flaws and removing them.
- Improved performance and makes the system more reliable.
Drawbacks/Disadvantages of Recovery Testing :
- Recovery testing is a time-consuming process .
- Involves multiple steps and preparations before and during the process.
- The recovery personnel must be trained as the process of recovery testing takes place under his supervision.
- The potential flaws or issues are unpredictable in a few cases. It is difficult to point out the exact reason for the same.
- Scalability Testing is a non functional testing method that measures performance of a system or network when the number of user requests are scaled up or down.
- The purpose of Scalability testing is to ensure that the system can handle projected increase in user traffic, data volume, etc.
Goals of Scalability Testing:
- Scalability Testing focuses on the performance of your websites, software, hardware, and application when changes are done in the size or volume of the system to meet a growing need.
- Scalability testing lets you determine how your application scales with increasing workload.
- Determine the user limit for the Web application.
- Determine client-side degradation and end user experience under load.
- Determine server-side robustness and degradation.
Some scalability Testing attributes :
1) Response time:
It is the measure of the time taken by a web application to respond to a user request.
Time is measured once the hyperlink is clicked till the new web page is loaded on the web browser.
Scalability Testing is done to identify the response time of the web server under normal load, threshold load, heavy load and break-point load of user requests.
Throughput is defined as the rate at which something can be processed.
On a web server it is the rate at which number of requests is served by the web server successfully.
3) Performance measure with number of users:
Number of users that it can support without its breakdown or busy standby situation.
4) Threshold load:
Threshold load is the number of user requests that a web server could handle with desired throughput.
5) CPU/ Memory usage
A web application performance with network traffic.
There should be less network usage with maximum utilization of server response.
6)Web server request and response time
The time in which request is snt and response is received from the server.
Volume testing refers to testing a software application, where the software is subjected to a huge volume of data.
E.g., if we want to volume test our application with a specific database size, we need to expand our database to that size and then test the application’s performance on it.
Subject the software to large amounts of data and check the limit where the software fails.
- Maximum database size is created and multiple clients query the database or create larger reports.
- It is also referred to as flood testing
Goals of Volume Testing:
- Recognize problems that may be created with large volumes of data.
- Check the system’s performance by increasing the volume of data in the database.
- Identify the point at which the stability of the system reduces.
- Identify application capacity.
Benefits/Advantages of Volume Testing:
- Helpful in saving maintenance cost.
- Identifies bottlenecks early.
- Ensures system capability in the real world.