JMeter is a freeware tool which is in high demand. But lack of some features restricts JMeter to become a powerful tool. One of them is not getting some important features directly like Parameter Setting which is easily available in LoadRunner (Refer LoadRunner Parameter Settings). As this feature is not directly available in JMeter, so you need to make the use of some of the existing elements in the JMeter and implement the mode of accessing the parameter value as required. In this article, you will learn how to implement the random value of a parameter at each occurrence in JMeter. For this purpose, you would require 4 elements to add under Thread Group:
- Loop Controller
- Random CSV Data Set Config (Download from Blazemeter site)
- BeanShell Sampler
The Parameter file i.e. CSV file has the following values:
Add all the above-mentioned elements under a thread group (Refer to Figure 02)
Click ‘Loop Controller’ and provide the value in ‘Loop Count’ field which should be equal to the number of occurrences. In this example, I have taken 3 as loop count i.e. I want to use 3 values from the list within the same iteration. Refers to Figure 03.
Let’s have a look at the bzm – Random CSV Data Set Config and apply the same in your scenario. Make sure you provide correct CSV file path and variable name.
The ‘Counter’ element is used to generate a new variable each time in which parameter value will be substituted in the sampler request (Pay attention to number format as in the similar way it has to be substituted in sampler request)
Now, write the given code the BeanShell Sampler. This code will read the value from the CSV file and assign it to the variable name generated by the counter.
So, here we have completed the set-up to generate the random value at each occurrence of the parameter.
Now, come to sampler request part where we will use these variables. To illustrate the scenario, I have used a dummy sampler. Let’s consider below is my original request.
Now, I will modify the request as per the set-up to pass the different value from parameter list at each occurrence.
Now, run the test and see the result in the ‘View Result Tree’ listener.
- Make sure you have sufficient test data to simulate ‘Random Each Occurrence’ scenario.
- ‘Recycling of Test Data’ setting can be controlled by bzm – Random CSV Data Set Config element setting. Use this setting wisely.
You may be interested:
- JMeter – Parameter Setting – Unique Each Occurrence
- JMeter – Parameter Setting – Sequential Each Occurrence