Анализ Jmeter и объекты Assert Array of Json - PullRequest
0 голосов
/ 07 июня 2018

В Jmeter при попытке извлечь данные из объекта Json все в порядке и прекрасно работает, но, когда у меня есть массив объектов Json, я не могу извлечь его.

Результат:

[{"id":1,"name":"test"},{"id":2,"name":"test2"}]

это мой проект JSON Extractor и JSR233 Assertion. enter image description here

enter image description here

В скрипте Groovy я веду журнал.info, но не фиксирует значение переменной, которое описано в JSON Extraxtor.

String id =  vars.get("id");
 log.info ("The example answer is " + id);
   if (id == ""){
        AssertionResult.setFailureMessage("The id is  null");
            AssertionResult.setFailure(true); 
    } 

Обратите внимание, что если ответ Json выглядит следующим образом {"id":1,"name":"test"}, все работает правильно.

1 Ответ

0 голосов
/ 07 июня 2018
  1. Измените Путь JSON Выражение, чтобы оно выглядело как: $..id... является оператором глубокого сканирования , поэтому он будет возвращать все значения атрибутов id.
  2. Изменение номера совпадения на -1

Это приведет к следующим переменным:

id_1=1
id_2=2
id_matchNr=2

Я понятия не имею, что именно вам нужно утверждать,надеюсь, вы сможете изменить свой скрипт Groovy самостоятельно.

Также следует помнить, что с 1010 * JMeter 4.0 доступен тестовый элемент JSON Assertion , поэтому вам не нужно иметь отдельные элементы экстрактора и утверждения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...