REST API에서 아래 응답을 받고 있지만 수신 된 응답에서 레이블 값을 추출하여 나중에 스크립트에서 사용하기 위해 변수에 할당하기가 어렵습니다.
응답은 다음과 같습니다. :
{
"result": "SUCCESS",
"rawAttr": "[{\"attributes\":[{\"name\":\"resourceid\",\"value\":\"7A7Q123456\"},{\"name\":\"physicalid\",\"value\":\"7A7Q123456\"},{\"name\":\"dsw:label\",\"value\":\"MY Product00004285\"},{\"name\":\"dsw:created\",\"value\":\"2019-11-06T08:39:39Z\"}]}]",
"physicalid": "7A7Q123456",
"contextPath": "/path",
"id": "7A7Q123456",
"message": null
}
나는 얻을 수 response.id
있고 response.result
유효성 검사에 도움이되지만 dsw:label
value
어느 것을 얻을 수는 없습니다.MY Product00004285
내가 할 때 나는 def Arr = response.rawAttr
그것이 배열이든 문자열이든 아래의 값을 얻습니다. 문자열 인 것 같습니다.
[{"attributes":[{"name":"resourceid","value":"7A7Q123456"},{"name":"physicalid","value":"7A7Q123456"},{"name":"dsw:label","value":"MY Product00004298"},{"name":"dsw:created","value":"2019-11-06T08:39:39Z"}]}]
아래 JSON 경로 표현식을 사용하여 JMeter JSON 추출기에서 레이블을 추출하는 것은 매우 쉽습니다. $.attributes.value[2]
Karate의 유형 변환 기능을 참조하십시오 : https://github.com/intuit/karate#type-conversion
따라서 다음과 같이 할 수 있습니다.
* json attr = response.rawAttr
그리고 당신은 모두 준비되었습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다