Parameterization in JMeter

What is Parameterization and why it is required?

Parameterization is process of generalizing some user input, so as to use it for multiple users or iterations. Suppose, we have to do load test of a search engine, for that we record the search scenario. Now to do effective load test, we can't just playback the script for say 100 users. We should simulate 100 users that search for 100 different things. Here we need parameterization, wherein we can have a CSV file that contains 100 different items. Now instead of the static search item that we had recorded in our script we can include the search items from the CSV file dynamically.


Parameterization through JMeter

  1. First of all you need to do simple recording for the search action, as discussed in the previous posts. Then identify the request/call that is associated with the search action and find the parameter that has parameter value as the search item that we have recorded. E.g. if we had recorded for item 'abc' then find the parameter that has 'abc' as its value. Paramterization
  2. Now we have to parameterize this parameter. For this we will use 'CSV Data Set Config'. Click on Thread group-> Add->Config Element->CSV Data Set Config.
    Paramterization
  3. Create a CSV file containing elements that can be used as the search parameter value. csv
  4. Now come to JMeter and place 'CSV Data Set Config' control anywhere before the request/call that has the search action- parameter (see below image for reference). Next we need to configure the 'CSV Data Set Config' control. In the file name text box - enter the name of the CSV file along with the whole path. If the CSV file is in the same directory where the JMeter script is located then the path can be omitted. In the variable name textbox - enter any valid variable name. Parameterization
  5. Now go to the parameter that has static search item value. In the parameter value of that parameter write "${name of the variable created in step 4}" Paramterization

Now on running the load test, for more than 1 user or for more than 1 iterations, at each execution a new value will be fetched from the CSV file (this can be verified from the "View Result Tree" listener). This was all about parameterization.