#tsung
#tsung
Вопрос:
Я использую tsung 1.6, и у меня есть файл конфигурации, в котором один из запросов возвращает следующий ответ.
Ответ:
[
{ key: value1 },
{ key: value2 }
]
Моя цель — извлечь некоторые переменные элементы из ответа и использовать их в дальнейшем. Чтобы быть конкретным, я хотел бы извлечь value1
и value2
в динамической переменной. Я делаю следующее
<request>
<dyn_variable name="value1" jsonpath="$[0].key"/>
<dyn_variable name="value2" jsonpath="$[1].key"/>
<http url='/get.json' version='1.1' method='GET'></http>
</request>
<request subst="true">
<http
url='/patch/%%_value1%%'
version='1.1'
contents='{amp;quot;notifiedamp;quot;:true}'
content_type='application/json;charset=utf-8'
method='PATCH'
/>
</request>
Вышеизложенное мне ничего не дает.
$[0]
Синтаксис — это то, что я взял с этого сайта. На это была ссылка в документации tsung, однако tsung также упомянул, что он реализует очень ограниченное подмножество jsonpath.
Нужна помощь в извлечении следующих данных.
Спасибо
Ответ №1:
например
test.json: [{«a»:1},{«b»:2}]
tsung.xml:
<request>
<dyn_variable name="Result" jsonpath="$.[0].a"/>
<http url='/test.json' version='1.1' method='GET'></http>
</request>
p.s.
Формат файла test.json не соответствует спецификации utf-8
Ответ №2:
Несколько примеров извлечения данных:
<dyn_variable name="id_1" jsonpath="$.content.id"/>
<dyn_variable name="id_2" jsonpath="$.content.[0].id"/>
<dyn_variable name="id_3" jsonpath="$.content.forms.array[?title=test].id"/>
Смотрите другие примеры:
https://goessner.net/articles/JsonPath/index.html#e2
И проверьте в реальном времени:https://jsonpath.com /