Skip to main content

Performance testing vs Load testing vs Stress testing

Today I want to discuss a popular topic regarding a difference between Load and Performance testing. Those two types of testing are commonly used together but there are several key differences between the two.
To get a better understanding of the topic lets have a real life example from one of my clients and use it to explain the difference.
I have worked for a client that was building an in-house web application that provides its customers with an option to select and order different products and services. The request was, before the up-coming release, to test the performance of their product.
We started the task by trying and understand what they expect from performance point of view and then went through an exercise of defining what is captured by what test.
The client said that they are looking to have about 900-1300 active users on the site at a given moment, and the expected response time (for a page to load) should be less than 5 seconds.
With those details what are the tests that we want to tor run Performance or Load?


Performance Test:

This test will be used to determine how long it will take the website to respond while regular actions are performed. the response time will be measured usually under normal load of the website. It is important to understand that the load during each performance test is a constant that is not being changed and the variable will be the functional parameter. If we test a search Product functionality we will measure the response time for different search words (some return small result set and some return big result set) under a constant load of 900 expected users.


Load Test:

Here our goal is to measure how different loads are affecting our performance. We already know our performance under expected load and want to see how changes in the load affecting the measured response time. In our search functionality example our constant will be our search term and the variable will be the load. In this test the response time will be measured for low load (10 users), medium load (500 users), normal load (1000 users), and above normal load (1800 users). 

Stress Test:

Here our goal is to find the breaking point of our product. We begin with test which will include similar steps and configuration to Load test but with much higher than expected loads, we are keeping on increasing the load to understand at which point the website will not be responding at all to our request, or at which point the request are so slow that are effectively unusable.

Comments

Popular posts from this blog

7 Most Popular Test Types in Software Testing

Today we are going to return back to basics of software testing and discuss the 7 most popular test types that are being used in every software testing effort. Those different test types cover all the levels of the software to make sure that the final result matching the expectations from every possible angle. Here is our list: Unit testingSmoke testingRegression testingFunctional testingIntegration testingUser Acceptance TestingPerformance Testing


Now let’s have a deeper dive into each one of those by using a simple example of an imaginary system that was created in order to manage warehouse activity including shipments, inventory and goods receptions from suppliers.
Unit Testing This type of testing is usually performed by the developers and is covering the very basic development component. In this test developers are testing the straight forward functionality of a functional piece of code to make sure that it is performing according to their expectations. In our example: This test w…

Story Points estimation for Scrum with Fibonacci vs Shirt Sizes vs Linear - 7 minute guide

It is all began long time ago when Development Teams were constantly asked to provide estimate and they were having a hard time to properly face the task. Let's admit it, there are so many things that can change, happen, and simply go wrong during the development process that one can hardly expect a proper estimation of hours for each task. That why a relative estimation with Story Points came along.

Story Points Estimation
Its a different way to estimate the effort of the Scrum Development Team with-in Agile methodology, which means that instead of estimating hours of work the team estimates each effort relatively to other efforts in the project.
Let's assume that a developer knows that specific 'Task 1' is much harder than another 'Task 2' it is hard for him/her to quantify that harder feeling in hours of additional work but it is possible to say that it much more work. This situation is being address by Story Points when each story point is representing som…

5 Steps to Install Robot Framework for Web Testing Automation - 7 minute Guide

Lately, I found myself helping several people to begin their automation testing journey. And what a better place to do it then a nice new installation of a Robot Framework with its Selenium2Library on a Windows OS.

Why Robot Framework with Selenium2Library? While you are probably here because you are looking for a quick installation guide for Automation Testing platform for you web project, I still need to do my do diligence and explain in couple of words why we need it.
Robot Framework it's a Python framework that allows for a less development oriented Manual QA professionals to do a quick switch into Test Automation. This can be achieved by allowing for easy English phrases (e.g. Click Element, Wait, etc) to replace a more complex Python syntax.
Selenium2Library it's additional add on on top of Robot Framework that allows easy interaction with web elements during the automation process.

That's it..... DONE with the talking now the installation....

Installation process Ro…