从变量jMeter beanshell脚本检索某些值

从变量jMeter beanshell脚本检索某些值,jmeter,beanshell,Jmeter,Beanshell,目前正在用jMeter开发一个脚本,我需要从一个响应中检索x个值,然后将这些值推送到另一个HTTP请求中,这里有一个棘手的部分,响应是一个总是变化的表(例如,每次运行测试时,行都会增加或减少)到目前为止,我已经创建了一个Regex提取器,它可以检索表与表之间的任何内容。现在我需要创建一个beanshell后处理器,它从Regex提取器检索的变量中检索某些值,并将它们应用于HTTP请求。我不确定这是否是最好的方法,所以我愿意接受其他方法的建议 您需要应用于第二个请求,而不是应用于第一个请求的后处理

目前正在用jMeter开发一个脚本,我需要从一个响应中检索x个值,然后将这些值推送到另一个HTTP请求中,这里有一个棘手的部分,响应是一个总是变化的表(例如,每次运行测试时,行都会增加或减少)到目前为止,我已经创建了一个Regex提取器,它可以检索表与表之间的任何内容。现在我需要创建一个beanshell后处理器,它从Regex提取器检索的变量中检索某些值,并将它们应用于HTTP请求。我不确定这是否是最好的方法,所以我愿意接受其他方法的建议

  • 您需要应用于第二个请求,而不是应用于第一个请求的后处理器
  • 我认为使用正则表达式解析HTML不是一个好主意,我建议使用or
  • 一旦您以

    var_1=foo
    var_2=bar
    var_MatchNr=2
    
    您可以将这些值添加到第二个HTTP请求中,如:

    import java.util.Iterator;
    import java.util.Map;
    
    
    Iterator iter = vars.getIterator();
    int counter = 1;
    while (iter.hasNext())
    {
       Map.Entry e = (Map.Entry)iter.next();
       if (e.getValue() != null)
       {
           if (e.getKey().toString().startsWith("var_") && e.getValue().toString().length() >0)
           {
              sampler.addArgument("param" + counter, e.getValue().toString());
              counter++;
           }
       }
    }