3 Aug 2012 01:01
Dynamically enable/disable HTTP Request Defaults parameters
Stephen Ash <stephenash <at> gmail.com>
2012-08-02 23:01:05 GMT
2012-08-02 23:01:05 GMT
In the following test plan example, the HTTP Request Defaults element is applied to all HTTP Samplers. Is there a way to modify that test element dynamically during the test execution? The use case is that each of the /foo, /bar, /baz requests can take an optional request parameter. So both GET /foo and GET /foo?verboseLogs=true would be valid requests. I was looking for a way to pass in a property (-JoptionalParameters=true) to JMeter in order turn on or off those arguments. Test Plan - HTTP Request Defaults - Thread Group -- HTTP Sampler (GET /foo) -- HTTP Sampler (GET /bar) -- HTTP Sampler (GET /baz) A couple of things that I have tried so far without luck: - Move the HTTP Request Defaults into the Thread Group and then surround with an If Controller. This causes the HTTP Requests Defaults to only be in the context of the If Controller now, and not propagated up the If Controller's parent. - Adding a BeanShell pre-processor to the Test Plan or Thread Group that will get the ThreadGroup from the current context and add a new Debug Sampler Element (would swap with ConfigTestElement later). That probably won't work in general since the structure of the test is already defined and not re-evaluated when I add the Test Element. Some things that will work, but I would like to avoid since they are not as sustainable:(Continue reading)
RSS Feed