Jmeter - Как да прочетете стойност на xml атрибут от отговора на HTTP Sampler

Как мога да получа стойността на атрибута от отговор на HTTP семплер и да използвам тази променлива в друг семплер?

Друг проблем е, че HTTP семплерът, от който искам да получа стойността на атрибута, има повече от един елемент с едно и също име, така че трябва да превъртя целия възел и да извлека стойността на атрибута, как мога да постигна това?


person user1665011    schedule 12.09.2012    source източник
comment
Отговорът на PMD UBIK-INGENIERIE изглежда отговаря на вашия въпрос. Ако сте имали нещо друго предвид как предоставяте повече подробности. Като примерен вход/изход, jmeter скрипт или вашия тестов план в псевдо код   -  person ant    schedule 19.05.2013


Отговори (1)


Да предположим, че имате:

<toto>
    <titi name="123" />
    <titi name="321" /> 
</toto>

И ако разбирам, че искате да извлечете 2 стойности 123 и 321

Направете следното:

  • Добавете XPath_Extractor като дете на HTTP Sampler:

    XPath Query : /toto/titi/@name
    Reference Name : fullAnswer
    
  • Добавете BeanShell Sampler:

    int number = Integer.parseInt(vars.get("fullAnswer_matchNr"));
    StringBuilder builder = new StringBuilder();
    for(int i=0;i<number;i++) {
        builder.append(vars.get("fullAnswer_"+(i+1)));
    }
    vars.put("body", builder.toString());
    
  • Ще получите като JMeter променливи:

    body=123321
    fullAnswer=123
    fullAnswer_1=123
    fullAnswer_2=321
    fullAnswer_matchNr=2
    
person UBIK LOAD PACK    schedule 14.09.2012