Load Testing: Think Times

Think Time is the time it takes a person to process the information received from the application and decide what to do next. It is also the amount of time spent filling in a form before clicking on Submit or Next. Because every user is different, to have accurate load tests it is important to use a good Think Time range. Some users take longer to read and/or enter data into a form than others. Test Studio can automatically vary the Think Time based on a deviation time specified with the Think Time. This will more accurately replicate the length of time from when a person receives a response (a webpage) from your server to the time that person requests a new page.

 

A deviation anywhere from 10 to 120 seconds, depending on the specific webpage is usually a good practice to follow. A good approach to determine what this range should be for any specific webpage is to study the logs of your website and determine what is the average amount of time users spend on the page. Let's say the average comes out to 60 seconds. A 50% deviation of that time would be a good number to use, which works out to be a deviation of 30 seconds.

 

Think Time may optionally be added between HTTP transactions. Test Studio simulates Think Times by inserting delays in-between the receipt of the last HTTP response and the start of the next HTTP request.

 

Note: There is one subtle but important difference between capturing new traffic and capturing from an existing web test. While capturing new traffic Test Studio will automatically record Think Time for you. When playing back an existing functional web test Test Studio will execute it as fast as possible and add default Think Times into the recorded HTTP transactions that correspond to the break in between test steps.

 

If you recorded new HTTP traffic via Capture New, Test Studio will automatically detect and record think times and add them to the new User Profile. Similarly if you imported a Fiddler trace, Test Studio will insert Think Times based on the time stamps of the HTTP requests contained in the trace.

 

Once your recording or import is complete you can optionally insert or modify the existing think times.

  1. Click the Add Think Time button. This will add a Think Time button in front of every HTTP transaction (that doesn't already have a think time).
  2.  

    You can insert think times by clicking the "Add Think Time" button.

     

  3. Click the button next to the HTTP transaction where you would like to add a  think time.
  4.  

    Click the button next to the transaction after which you want to add think time. 

     

  5. Click the Think Time step to show the current settings.
  6. Set the duration you want for that Think Time. The default is 10 seconds.
  7.  

    Set the duration you want for this Think Time. 

     

  8. Set the deviation you want for this Think Time. The deviation specifies how much randomization will be added to the duration. The default is 3. A deviation of 3 means the think time will randomly vary + or - 3 seconds while the load test is running.