32

I am trying to check if a particular HTTP request's response time is over 30 seconds, and if it is, then mark it as failed and stop the thread. Sometimes I can see response times close to 80 seconds, an no browser is waiting that long for a response from the server.

I found the following three ways to set a timeout value in JMeter, however this confuses me, because there is multiple options and I don't know which one to use, or if there is any difference at all between them.

So here are the options I found that are related to response timeout:

  1. Setting Response timeout value in the sampler Method 1
  2. Add a Duration assertion

Method 2
3. Setting timeout in jmeter.properties configuration file. Options I found here:

  1. os_sampler.poll_for_timeout=x
  2. http.socket.timeout=x
  3. httpclient.timeout=x

So, the problem is that I don't know where to set the response timeout from the listed options. Is there any difference at all between these options? So what I would like to see as a result: If a particular HTTP request takes more than 30 seconds to get a response from the server, stop waiting for a response and mark it as a failed request.

Dominik Antal
  • 3,281
  • 4
  • 34
  • 50

2 Answers2

31

Socket/Connect and Read/Response timeouts can be set from Http Request Defaults section at jmeter GUI. See sample:

Connect timeout: 3 seconds
Response timeout: 20 seconds.

enter image description here

Devrim
  • 15,345
  • 4
  • 66
  • 74
23

For your need, an assertion is not the right solution as it will only mark the request as failed but it will wait.

The right option is a response timeout.

Regarding the 3rd point

  1. os_sampler.poll_for_timeout=x => not for http, see:

  2. http.socket.timeout=x => applies to all requests using HttpClient4 or 3, see:

  3. httpclient.timeout=x => Same, see:

I think the best option is to use 1. , if you want those values to apply to all requests, just use Http Request Defaults element:

HTTP Request Defaults

If you're looking to learn jmeter correctly, this book will help you.

UBIK LOAD PACK
  • 33,980
  • 5
  • 71
  • 116
  • 2
    So... does Http Request Defaults element override underlying `http.socket.timeout` and `httpclient.timeout` - I would assume so? – Tuukka Mustonen Aug 05 '15 at 11:04