2016-02-07 2 views
0

В настоящее время разрабатываем скрипт в jMeter, мне нужно получить х количество значений из ответа, а затем вставить эти значения в другой HTTP-запрос, вот сложная часть ответа - это таблица, которая всегда меняются (например, строки увеличиваются или уменьшаются каждый раз при запуске теста), до сих пор я создал экстрактор регулярных выражений, который извлекает что-либо между таблицей, теперь мне нужно создать пост-обработчик beanshell, который извлекает определенные значения из переменной, полученной с помощью Regex и применяет их к HTTP-запросу. Я не уверен, что это лучший способ сделать это, поэтому я открыт для предложений по этому поводу другим способом.Извлечение определенных значений из скрипта beanhell переменной jMeter

ответ

0
  1. Вам необходимо Beanshell PreProcessor применяется к 2-запросу, не постпроцессор применяется к 1-й просьбе
  2. Я не думаю, что с помощью регулярных выражений является очень хорошей идеей для разбора HTML, я предложил бы идти для CSS/JQuery Extractor или XPath Extractor вместо
  3. После требуемые значения в виде

    var_1=foo 
    var_2=bar 
    var_MatchNr=2 
    

    вы сможете добавить эти значения в 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++; 
         } 
        } 
    } 
    
Смежные вопросы