A web developer called me the other day and asked, “What’s the difference between load testing vs performance testing?”
I pondered for a moment and replied, “Not really.” Hmmmm…now I needed to support my answer. Thus began a hunt for good answers to my client’s question.
Searching Google, gleaning from our interviews, and asking respected colleagues were parts of my pursuit for the truth about load vs. perf. Sorry to abbreviate, but I’ve heard cool engineers shorten it to “perf”, and I desperately want to be cool. (in a geeky way)
The answer isn’t black and white. However, I have heard software testing professionals say load testing is more aligned with black box testing and performance testing with white box testing. Thus, performance involves getting inside the various components of a system.
Strong opinions are expressed by many experienced testers – and the opinions vary. In this post, I will give my perspective and share quotes from people smarter than myself about the topic. Herein lies the results of my hunt.
Personally, I believe load testing is a subset of performance testing. My point of view will be relative to web applications or websites. In the same way web developers usually will view testing differently from QA Managers, non-web software testers may not agree with my narrow definitions of perf vs load.
My Simplified Definitions
Performance Testing = how fast is the system?Load Testing = how much volume can the system process?
Performance testing seems to me to be much more broad than load testing. Consider:
- A web developer can test the speed at which a page renders in a browser, and that is testing performance. Yet, that test would have nothing to do with load.
- I might analyze the efficiency at which my database processes a single specific SQL query, and the resulting speed of delivery of the records can be the slowest component of the whole page building process. Measuring that speed is about performance, but only one transaction is involved (small load).
- Load testing is usually focused on metrics like requests per second and concurrent users (the cause); whereas performance testing is more concerned with response times (the effect).
How Our Industry Defines Them
Wikipedia has this to say about load testing:
“Load testing is the process of putting demand on a system or device and measuring its response.
When the load placed on the system is raised beyond normal usage patterns, in order to test the system’s response at unusually high or peak loads, it is known as stress testing. The load is usually so great that error conditions are the expected result, although no clear boundary exists when an activity ceases to be a load test and becomes a stress test.
There is little agreement on what the specific goals of load testing are. The term is often used synonymously with software performance testing, reliability testing, and volume testing.”
Note that last sentence – synonymous with performance testing. Yes, I agree. They are often used interchangeably. Hence the need to more clearly define them.
Wikipedia defines performance testing as:
“In the computer industry, software performance testing is used to determine the speed or effectiveness of a computer, network, software program or device. This process can involve quantitative tests done in a lab, such as measuring the response time or the number of MIPS (millions of instructions per second) at which a system functions. Qualitative attributes such as reliability, scalability and interoperability may also be evaluated. Performance testing is often done in conjunction with stress testing.”
Answers.com provides this definition for load testing:
“Load testing is the process of putting demand on a system or device and measuring its response. There is little agreement on what the specific goals of load testing are. The term is often used synonymously with software performance testing, reliability testing, and volume testing.”
Answers.com provides this definition for performance testing:
“In software engineering, performance testing is testing that is performed, from one perspective, to determine how fast some aspect of a system performs under a particular workload. It can also serve to validate and verify other quality attributes of the system, such as scalability, reliability and resource usage.”
SearchSoftwareQuality defines load testing this way:
“Load testing is the process of subjecting a computer, peripheral, server, network or application to a work level approaching the limits of its specifications. Load testing is a part of a more general process known as performance testing.”
SearchSoftwareQuality defines performance testing this way:
“Performance testing is the process of determining the speed or effectiveness of a computer, network, software program or device. Performance testing can also be used as a diagnostic aid in locating communications bottlenecks.”
Friends and Colleagues Speak Out
Now let’s hear from the experts. There have been several web developers and testers that have graced us with their insights via interviews. Those are in our blog, so I plucked out their thoughts on our perf vs. load question.






Hunting With Google & Twitter



- Load Testing
- Stress Testing
- Volume Testing



Conclusion
Web load testing is:
- similar to, but not synonymous with performance testing
- concerned with the volume of traffic your website (or application) can handle
- not intended to break the system
- viewing the system from the user perspective
- associated with black box testing
Web performance testing is:
- a superset of load testing
- concerned with speed and efficiency of various components of the web application
- useful with only one user and/or one transaction
- viewing the system from the architecture perspective (behind the server side curtain)
- associated with white box testing






The IEEE and ACM have both settled on common definitions for performance, load and stress tests. The following are paraphrased: Performance is the category. Load is a test under a defined set of events for a period of time with an expected level of response. Stress is a contantly increasing load with a defined step interval until the system reaches a point of unacceptable response or total system failure.
I have a slight objection in the conclusion given for Load testing and Performance testing by Mr. Scott.
Performance testing is merely the term used to define the Performance of any system, Its measurement is made by different aspects like Load, Volume, Stress etc.
Here Load testing refers to the rate of response of the system (Client or server) with n number of requests.
Volume testing refers to the rate of response of the sytem with increased volume of data.
Stress testing refers to the increased level of both load or volume.
I think this is the simplified definition for all terms which constitute the Performace of an application.
hi praveen,
i totally agree with what you say about performance testing, but however i would like to add few more words to what you wrote about load testing and stress testing,
i would like to state load testing as – checking whether the system can handle the expected load as specified by the developers/expected by the client.
and stress testing is – checking the break point of the application, its like applying a load beyond what the application can handle to check how long the application works before it breaks down.
This article is very nice to know the great difference between the Load testing and performance testing. We love LoadStorm and think it is the best load testing tool available because it is easy to use and the price is right.
i am completely agree with Kapil.There are 1000 testing books available book in the market. Every book has their own definitions.so i strictly follow ISTQB terms which is followed by almost 30 countries.
Let me know if you guys any questions.
You can mail me @
Regards,
Mangi
But James, it’s much more fun to imagine that the topic has not been settled already by the well-established conclusions of a previous generation of engineers. If we need to keep debating these definitions, that’s fine with me.
But if the debate results in the same conclusion, facts or standard, then it should not honestly be considered as innovative.
-mt
If anyone is interested in the top 8 software testing and QA books. I think these are the 8 essential books to read if you are a tester.
Cheers!
Best software testing and QA books:
Here’s how to think about it:
- performance testing is done to see how long a particular operation takes. How long does it take to request a web page or write some data to the database? It’s just an operation and a time.
- load testing is a measure of what happens to your performance metrics as you do a bunch of concurrent operations on the system. How long does it take to request that same web page when 100 other people are also requesting it? What about 1000 other people? Load testing builds on performance testing by looking at how performance changes as load increases.
- stress testing is simply identifying what happens to your system when it runs out of resources so you can try to come up with a failure plan.