how to extract value from request in Jmeter

前端 未结 4 839
梦谈多话
梦谈多话 2021-01-19 11:14

Hi I am passing an email which is a time function like below

email = ${__time(MMddyy)}_${__time(HMS)}@yopmail.com

The value of this functi

4条回答
  •  借酒劲吻你
    2021-01-19 11:38

    1. Add a Beanshell PostProcessor as a child of the request which sends that POST request
    2. Put the following code into the PostProcessor's "Script" area

      import org.apache.jmeter.config.Argument;
      import org.apache.jmeter.config.Arguments;
      
      Arguments argz = ctx.getCurrentSampler().getArguments();
      for (int i = 0; i < argz.getArgumentCount(); i++) {
          Argument arg = argz.getArgument(i);
          if (arg.getName().equals("email")) {
              vars.put("EMAIL", arg.getValue());
              break;
          }
      }
      
    3. Refer generated value as ${EMAIL} where required.

    Clarification:

    • above code will extract the value of email request parameter (if any) and store it to EMAIL JMeter Variable
    • ctx - shorthand to JMeterContext class instance
    • vars = shorthand to JMeterVariables class instance
    • Arguments and Argument - you can figure that out from JMeterContext JavaDoc

    See How to use BeanShell: JMeter's favorite built-in component guide for more information on Beanshell scripting in JMeter.

提交回复
热议问题