jmeter как использовать json path extractor

#jmeter

#jmeter

Вопрос:

Я новичок в jmeter.
Я хочу сохранить значение ключа в переменной, если идентификатор 7106 из следующего ответа

 [{"id":"MAIN","key":1},
{"id":"87","city":"Roselle","key":1000,"state":"IL"},
{"id":"7102","city":"Chicago","key":110,"state":"IL"},
{"id":"7106","city":"Crown Point","key":110038,"state":"IN"},
{"id":"7108","city":"Indianapolis","key":1139,"state":"NJ"}]
 

Как это сделать в jmeter?

Ответ №1:

Вот несколько вариантов:

Вариант 1: Экстрактор регулярных выражений

введите описание изображения здесь

Вариант 2: JSON JMESpath Extractor

введите описание изображения здесь

Вариант 3: JSON Extractor

введите описание изображения здесь

Комментарии:

1. Спасибо!! Это действительно помогает.

Ответ №2:

Добавьте post Processor — JSON Extractor в свой сэмплер и создайте переменную с любым именем, в выражении пути JSON дайте значение = $ ..key , это должно извлечь все значения, которые содержит «ключ».

Теперь добавьте просмотр дерева результатов, чтобы увидеть все созданные переменные, предположим, вы указываете имя переменной как «ключ», все значения должны быть сохранены как key_1, Key_2 и так далее..

теперь вы можете использовать любое значение, так как в вашем случае это будет ${key_4} . Добавление изображения для вашей помощи

JSON Extractor

Ответ №3:

Лучшим вариантом является использование JSON JMESpath extractor, который позволяет выполнять произвольные запросы JMESpath, в вашем случае это будет выражение фильтра, например:

 [? id=='7106'].key
 

ДЕМОНСТРАЦИЯ:

введите описание изображения здесь

Дополнительная информация: JMeter JSON JMESpath Extractor и Assertion: руководство