Testing Foundation
What is Software Testing?
Objective of Testing
Why is testing necessary?
Common Terms used in Testing
Verification Vs Validations
QA Vs QC
Debugging Vs Testing
Seven Testing Principles
SDLC Vs STLC
Fundamentals of Test Process
Software quality Factors
Software Development Models
Waterfall Model
V models
Iterative Model
Test Levels
Component Testing
Integration Testing
System Testing
Acceptance Testing
Strategies for Integration Testing
Big Bang
Stubs and Driver
Top Down Testing
Bottom Up Testing
Test Types
Functional Testing
Non- Functional Testing
Structural Testing
Re-testing & Regression Testing
Static AND Dynamic Techniques
Static Technique
Dynamic Technique
Static Analysis by Tools
White Box Techniques
Statement Coverage Testing
Branch Coverage Testing
Decision Coverage Testing
Path Coverage
Black Box Techniques
Equivalence Partitioning
Boundary Value Analysis
Decision Table testing
State Transition testing
Experience Based TestingTechniques
Random Testing
Exploratory Testing
Error Guessing
Functional Testing
Integration Testing
Unit Testing
System Testing
Smoke testing
Sanity testing
Regression Testing
Usability Testing
Security Testing
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing
Non Functional Testing
Compatibility testing
Endurance testing
Load testing
Performance testing
Recovery testing
Scalability testing
Stress testing
Volume testing
Test Planning and Estimation
Test Planning
Test Strategies Vs Test Plan
Test Approaches
Risk and Testing
Product Risks
Project Risks
Defect Management
Defect LifeCycle
Severity Vs Priority
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Â
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Â
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Â
- 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.
2) Throughput:
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
Network 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
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.
-
Recommended Articles:
Testing Foundation
What is Software Testing?
Objective of Testing
Why is testing necessary?
Common Terms used in Testing
Verification Vs Validations
QA Vs QC
Debugging Vs Testing
Seven Testing Principles
SDLC Vs STLC
Fundamentals of Test Process
Software quality Factors
Software Development Models
Waterfall Model
V models
Iterative Model
Test Levels
Component Testing
Integration Testing
System Testing
Acceptance Testing
Strategies for Integration Testing
Big Bang
Stubs and Driver
Top Down Testing
Bottom Up Testing
Test Types
Functional Testing
Non- Functional Testing
Structural Testing
Re-testing & Regression Testing
Static AND Dynamic Techniques
Static Technique
Dynamic Technique
Static Analysis by Tools
White Box Techniques
Statement Coverage Testing
Branch Coverage Testing
Decision Coverage Testing
Path Coverage
Black Box Techniques
Equivalence Partitioning
Boundary Value Analysis
Decision Table testing
State Transition testing
Experience Based TestingTechniques
Random Testing
Exploratory Testing
Error Guessing
Functional Testing
Integration Testing
Unit Testing
System Testing
Smoke testing
Sanity testing
Regression Testing
Usability Testing
Security Testing
User Acceptance Testing
White Box & Black Box Testing
Globalization & Localization Testing
Non Functional Testing
Compatibility testing
Endurance testing
Load testing
Performance testing
Recovery testing
Scalability testing
Stress testing
Volume testing
Test Planning and Estimation
Test Planning
Test Strategies Vs Test Plan
Test Approaches
Risk and Testing
Product Risks
Project Risks
Defect Management
Defect LifeCycle
Severity Vs Priority