Возможно ли обрезать объект JSON в ответ с помощью Jmeter?

#json #jmeter #trim #jsonresponse

#json #jmeter #обрезать #jsonresponse

Вопрос:

Ответ JSON возвращает объект со следующим значением.

2019-03-20T14:51:30.579 0000

Я хочу проигнорировать часть .579 0000 для моей проверки. Как я могу обрезать его от фактического значения, чтобы получить:

2019-03-20T14:51:30

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

1. возьмите строку и используйте функцию sub string с логикой, чтобы удалить ненужный символ.

Ответ №1:

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

Учитывая, что у вас есть следующий ответ JSON:

 {
  "someObject": "2019-03-20T14:51:30.579 0000"
}
  

Вы можете выполнить преобразование следующим образом:

  1. Добавьте постпроцессор JSR223 в качестве дочернего элемента запроса, который возвращает указанный выше JSON
  2. Поместите следующий код в область «Script»:

     def originalDate = new groovy.json.JsonSlurper().parse(prev.getResponseData()).someObject
    log.info("Original date: "   originalDate)
    vars.put("myDate", Date.parse("yyyy-MM-dd'T'HH:mm:ss.SSSX", originalDate).format("yyyy-MM-dd'T'HH:mm:ss"))
    log.info("Converted date: "   vars.get("myDate"))
      

    вам нужно будет изменить этот someObject бит путем к атрибуту JSON, содержащему эту дату. После завершения вы должны иметь возможность доступа к «обрезанным» данным по мере ${myDate} необходимости.

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

Ссылки:

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

1. Спасибо. Это помогло! Я пытался на Java использовать постпроцессор BeanShell, но безуспешно.