---
description: ENDURANCE TESTING is a software testing type, where a system is tested with a load, extended over a significant amount of time, to evaluate the behaviour of the system under sustained use. The purpose of the testing it to ensure that the application is capable enough to handle the extended load
title: What is Endurance Testing in Software Testing? (with Example)
image: https://www.guru99.com/images/what-is-endurance-testing.png
---

 

[Skip to content](#main) 

**⚡ Smart Summary**

Endurance Testing runs an application under a normal expected load for an extended period to reveal whether performance degrades over time. It is the test that catches the defects a one-hour load run cannot reach.

* 🕒 **Sustained Load:** Expected production traffic held for hours or days rather than minutes.
* 📉 **Degradation Focus:** The question is whether response times drift upward, not whether the target is met once.
* 💧 **Common Findings:** Memory leaks, connection pool exhaustion, and unbounded log or cache growth.
* 📊 **Monitoring Set:** Memory, CPU, response time, throughput, and database connections across the full run.
* 🛠️ **Tooling:** Standard load tools drive the traffic while APM tooling records the resource curves.
* ⚖️ **Trade-off:** Results are high value but slow to obtain, which limits how often the test can run.

[ Read More ](javascript:void%280%29;) 

![What is Endurance Testing](https://www.guru99.com/images/what-is-endurance-testing.png)

## What is Endurance Testing?

**Endurance Testing** is non-functional type of software testing where a software is tested with high load extended over a significant amount of time to evaluate the behavior of software application under sustained use. The main purpose of endurance testing is to ensure that the application is capable enough to handle extended load without any deterioration of response time.

This type of testing is performed at the last stage of the performance run cycle. Endurance testing is a long process and sometimes lasts for even up to a year. This may include applying external loads such as Internet traffic or user actions. This makes endurance testing differ from [Load Testing](https://www.guru99.com/load-testing-tutorial.html), which usually ends in a couple of hours or so.

Endurance means capacity so in other words, you can term Endurance Testing as Capacity Testing.

## Goals of Endurance Testing

* Primary goal of Endurance testing is to check for memory leaks.
* To discover how the system performs under sustained usage.
* To ensure that after a long period, the system response time will remain the same or better than the start of the test.
* To determine the number of users and/or transactions a given system will support and meet performance goals.
* To manage the future loads, we need to understand how many additional resources (like processor capacity, disk capacity, memory usage, or network bandwidth) are necessary to support usage in future.
* Endurance testing is generally done by either overloading the system or by reducing certain system resources and evaluating the consequences.
* It is performed to ensure that defects or memory leaks do not occur after what is considered to be a relatively “normal” usage period.

## What to Monitor in Endurance Testing

[](https://www.guru99.com/images/4-2016/040416%5F0537%5FEnduranceTe1.png)

In Endurance Testing following things are tested.

* **Test memory leakage**– Checks are done to verify if there is any memory leakage in the application, which can cause crashing of the system or O.S.
* **Test connection closure between the layer of the system** – If the connection between the layers of the system is not closed successfully, it may stall some or all modules of the system.
* **Test database connection close successfully**– If the database connection is not closed successfully, may result in system crash
* **Test response time** – System is tested for the response time of the system as the application becomes less efficient as a result of the prolonged use of the system.

## How to Perform Endurance Testing

Below is the basic testing approach for Endurance Test

* **Testing Environment –** Identify the hardware, software, operating system require for the endurance testing, assigning roles and responsibilities within the team, etc. The environment should be ready before the test execution. You also need to estimate common database production size and yearly growth. This is required as such you need to test how your application will respond after a year, two or five.
* **Creating the Test Plan, Scenarios –** Based on nature of testing – manual or automation or combination of both,[ Test Case ](https://www.guru99.com/test-case.html)design, reviews, and execution should be planned. Testing to stress the system, break point testing, etc. should also be part of the test plan. Testing to stress the system determines the break point in the application.
* **Test Estimation –** Provide the estimation of how long it will take to complete the testing phase. It should be analyzed on the basis of a number of testers involved and the number of test cycles required.
* **Risk Analysis –** Analyzing the risk and taking an appropriate action for the prevention. Prioritization of test cases as per the Risk factor and identify the below risk and issues tester may phase during the endurance test.
* Will performance remain consistent over time?
* Are there other minor issues that have not yet been detected?
* Is there external interference that was not addressed?
* **Test Schedule –** Determine the budget, deliverables within the time frames. As **Endurance Testing** applies a huge but natural load arrangement of transactions to the system/application for a continuous period of time.

## Endurance Testing Example

While **[Stress testing](https://www.guru99.com/stress-testing-tutorial.html)** takes the tested system to its limits, **Endurance testing** takes the application to its limit **over time**.

For Example, the most complex issues – memory leaks, database server utilization, and unresponsive system – happen when software runs for an extended period of time. If you skip the endurance tests, your chances of detecting such defects prior to deployment are quite low.

## Endurance Testing Tools

* WebLOAD
* LoadComplete
* [Apache JMeter](https://www.guru99.com/jmeter-tutorials.html)
* [LoadRunner](https://www.guru99.com/loadrunner-v12-tutorials.html)
* Appvance
* LoadUI
* OpenSTA
* Rational Performance Tester

### RELATED ARTICLES

* [What is Requirements Traceability Matrix (RTM) in Testing? ](https://www.guru99.com/traceability-matrix.html "What is Requirements Traceability Matrix (RTM) in Testing?")
* [What is Security Testing? Example ](https://www.guru99.com/what-is-security-testing.html "What is Security Testing? Example")
* [Database Testing Tutorial ](https://www.guru99.com/data-testing.html "Database Testing Tutorial")
* [11 Best AI Testing Tools for Test Automation (2026) ](https://www.guru99.com/best-ai-testing-tools.html "11 Best AI Testing Tools for Test Automation (2026)")

## Advantages of Endurance Testing

* It helps in determining how workload can the System Under Load handle.
* Provides accurate data that customer can use to validate or enhance their infrastructure needs.
* Identifies performance problems that may occur after a system has been running at a high level for longer period of time
* Typical issues are identified in smaller targeted performance tests, which means it ensures application remain available even when there is huge load in a very short span time.
* The endurance test is also used to check whether there is any performance degradation after a long period of execution

## Disadvantages of Endurance Testing

* It is often hard to define how much stress is worth applying.
* Endurance Testing could cause application and/or network failures that may result in significant disruption if[ Test Environment ](https://www.guru99.com/test-environment-software-testing.html)are not isolated.
* Permanent Data loss or corruption can occur by over-stressing the system.
* Resource utilization remains very high after the stress is removed.
* Some application components fail to respond.
* Unhandled exceptions are observed by the end user.

## How This Test Fits the Performance Testing Family

Performance testing is an umbrella term. The variants below differ only in the shape of the load applied and the duration it is held for, which is why they are so often confused with one another.

| Test type                                                             | Load pattern                            | Question it answers                                         |
| --------------------------------------------------------------------- | --------------------------------------- | ----------------------------------------------------------- |
| [Load testing](https://www.guru99.com/load-testing-tutorial.html)     | Expected peak load, short duration      | Does the system meet its targets under normal peak traffic? |
| [Stress testing](https://www.guru99.com/stress-testing-tutorial.html) | Increased beyond capacity until failure | Where does it break, and does it fail gracefully?           |
| [Spike testing](https://www.guru99.com/spike-testing.html)            | Sudden extreme surge, then withdrawal   | Does it survive and recover from a traffic shock?           |
| Endurance testing                                                     | Normal load held for many hours         | Does performance degrade over time?                         |
| [Soak testing](https://www.guru99.com/soak-testing.html)              | Sustained load over an extended period  | Are there memory leaks or resource exhaustion?              |
| [Stability testing](https://www.guru99.com/stability-testing.html)    | Varying load across conditions          | Does the system stay reliable as conditions change?         |
| [Volume testing](https://www.guru99.com/volume-testing.html)          | Normal users, very large data volume    | Does it cope as the database grows?                         |

**Endurance and soak testing are frequently treated as synonyms.** In common usage they are: both hold a sustained load for a long period. Where teams do distinguish them, endurance testing focuses on whether response times drift upward, while soak testing focuses on resource consumption such as memory, file handles, and connection pools. Running one usually gives you the evidence for both.

## Key Metrics to Capture During the Test

A performance run is only as good as what you record while it executes. Capture these six on the server and the client side, then compare them against the baseline rather than against a gut feeling.

| Metric                           | What it tells you                     | Warning sign                                 |
| -------------------------------- | ------------------------------------- | -------------------------------------------- |
| Average response time            | Typical user experience               | Any upward drift across the run              |
| 95th percentile response time    | The experience of the slowest users   | Far above the average, meaning inconsistency |
| Throughput                       | Requests handled per second           | Falling while load stays constant            |
| Error rate                       | Share of failed or timed-out requests | Any rise above the agreed threshold          |
| CPU and memory use               | Server resource headroom              | Memory that climbs and never returns         |
| Database connections and threads | Pool exhaustion                       | Counts that grow steadily without release    |

**Read the average and the percentile together.** An average of 800 ms with a 95th percentile of 900 ms describes a consistent system. The same average with a 95th percentile of 9 seconds means one user in twenty is having a bad time, and the average is hiding it.

**Watch the shape, not just the value.** In any long-running test, a flat resource line is a pass and a rising one is a leak, even when the absolute number is still comfortably inside the limit at the moment the run ends.

## Endurance Testing: Key Takeaways

* In [Software Engineering](https://www.guru99.com/what-is-software-engineering.html), Endurance testing is a subset of load testing.
* Endurance testing is a long process and sometimes last for even up to a year
* Checks are done to verify
* Test memory leakage
* Test response time
* Test database connection, etc.

## FAQs

🕒 What is the difference between endurance testing and load testing?

Load testing verifies the system meets its targets at peak load over a short run. Endurance testing holds a normal load for hours to reveal whether those targets still hold at the end of the run.

📉 What counts as a failed endurance test?

Any sustained upward trend in response time or resource use, even if no threshold is breached. The defect is the drift itself, because it will eventually cross the limit in production.

🛠️ When in the release cycle should endurance testing run?

After functional and load testing pass, and early enough that a discovered leak can still be fixed. Running it the night before release leaves no time to act on the result.

🤖 How is AI applied to endurance testing?

AI-based monitoring detects the point at which a metric changes trend and correlates it with deployments or scheduled jobs, turning hours of graphs into a specific suspect.

🧠 Can AI reduce how often endurance tests must run?

It can help prioritise. Risk models highlight which releases touch leak-prone code, so full runs are reserved for the changes most likely to need them.

#### Summarize this post with:

ChatGPT Perplexity Grok Google AI 

**Stay Updated on AI** **Get Weekly AI Skills, Trends, Actionable Advice.** 

##### Sign up for the newsletter

Subscribe for Free 

You have successfully subscribed.  
Please check your inbox. 

![AI-Newsletter]() Chosen by over **350,000+** professionals 

[Scroll to top ](#wrapper)Scroll to top 

× 

Toggle Menu Close 

Search for: 

Search

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.guru99.com/#organization","name":"Guru99","sameAs":["https://www.facebook.com/Guru99Official","https://twitter.com/guru99com"],"logo":{"@type":"ImageObject","@id":"https://www.guru99.com/#logo","url":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","contentUrl":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","caption":"Guru99","inLanguage":"en-US"}},{"@type":"WebSite","@id":"https://www.guru99.com/#website","url":"https://www.guru99.com","name":"Guru99","publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https://www.guru99.com/images/what-is-endurance-testing.png","url":"https://www.guru99.com/images/what-is-endurance-testing.png","width":"700","height":"250","caption":"What is Endurance Testing?","inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https://www.guru99.com/endurance-testing.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.guru99.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.guru99.com/softwaretesting","name":"Software Testing"}},{"@type":"ListItem","position":"3","item":{"@id":"https://www.guru99.com/endurance-testing.html","name":"What is Endurance Testing in Software Testing? (with Example)"}}]},{"@type":"WebPage","@id":"https://www.guru99.com/endurance-testing.html#webpage","url":"https://www.guru99.com/endurance-testing.html","name":"What is Endurance Testing in Software Testing? (with Example)","dateModified":"2026-07-28T16:49:53+05:30","isPartOf":{"@id":"https://www.guru99.com/#website"},"primaryImageOfPage":{"@id":"https://www.guru99.com/images/what-is-endurance-testing.png"},"inLanguage":"en-US","breadcrumb":{"@id":"https://www.guru99.com/endurance-testing.html#breadcrumb"}},{"@type":"Person","@id":"https://www.guru99.com/author/thomas","name":"Thomas Hamilton","description":"I am Thomas Hamilton, a seasoned professional in software testing, specializing in crafting comprehensive guides to help you master your software testing skills.","url":"https://www.guru99.com/author/thomas","image":{"@type":"ImageObject","@id":"https://www.guru99.com/images/thomas-hamilton-author-v2-120x120.png","url":"https://www.guru99.com/images/thomas-hamilton-author-v2-120x120.png","caption":"Thomas Hamilton","inLanguage":"en-US"},"worksFor":{"@id":"https://www.guru99.com/#organization"}},{"articleSection":"Software Testing","headline":"What is Endurance Testing in Software Testing? (with Example)","description":"ENDURANCE TESTING is a software testing type, where a system is tested with a load, extended over a significant amount of time, to evaluate the behaviour of the system under sustained use. The purpose of the testing it to ensure that the application is capable enough to handle the extended load","keywords":"testing","speakable":{"@type":"SpeakableSpecification","cssSelector":[".entry-title",".summary"]},"@type":"Article","author":{"@id":"https://www.guru99.com/author/thomas","name":"Thomas Hamilton"},"dateModified":"2026-07-28T16:49:53+05:30","image":{"@id":"https://www.guru99.com/images/what-is-endurance-testing.png"},"copyrightYear":"2026","name":"What is Endurance Testing in Software Testing? (with Example)","subjectOf":[{"@type":"FAQPage","mainEntity":[{"@type":"Question","name":"What is the difference between endurance testing and load testing?","acceptedAnswer":{"@type":"Answer","text":"Load testing verifies the system meets its targets at peak load over a short run. Endurance testing holds a normal load for hours to reveal whether those targets still hold at the end of the run."}},{"@type":"Question","name":"What counts as a failed endurance test?","acceptedAnswer":{"@type":"Answer","text":"Any sustained upward trend in response time or resource use, even if no threshold is breached. The defect is the drift itself, because it will eventually cross the limit in production."}},{"@type":"Question","name":"When in the release cycle should endurance testing run?","acceptedAnswer":{"@type":"Answer","text":"After functional and load testing pass, and early enough that a discovered leak can still be fixed. Running it the night before release leaves no time to act on the result."}},{"@type":"Question","name":"How is AI applied to endurance testing?","acceptedAnswer":{"@type":"Answer","text":"AI-based monitoring detects the point at which a metric changes trend and correlates it with deployments or scheduled jobs, turning hours of graphs into a specific suspect."}},{"@type":"Question","name":"Can AI reduce how often endurance tests must run?","acceptedAnswer":{"@type":"Answer","text":"It can help prioritise. Risk models highlight which releases touch leak-prone code, so full runs are reserved for the changes most likely to need them."}}]}],"@id":"https://www.guru99.com/endurance-testing.html#schema-1153540","isPartOf":{"@id":"https://www.guru99.com/endurance-testing.html#webpage"},"publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://www.guru99.com/endurance-testing.html#webpage"}}]}
```
