2017-12-14 4 views
0

다음 응답의 유효성 검사가 중단되었습니다.JSON KARATE 응답 유효성 검사

가라데를 사용하여 요청을하면 다음 응답이 표시됩니다.이 응답을 확인하고 싶습니다.

My Response is: { 
     "response": [ 
     { 
      "tagName": "CaseTag", 
      "value": "CaseTagMckAuto_TagValueOne", 
      "entityType": "Case", 
      "partitionId": 1, 
      "appId": 1, 
      "id": 46, 
      "tagId": 1, 
      "entityId": 1 
     }, 
     { 
      "tagName": "CaseTag", 
      "value": "CaseTagMckAuto_TagValue", 
      "entityType": "Case", 
      "partitionId": 1, 
      "appId": 1, 
      "id": 45, 
      "tagId": 1, 
      "entityId": 1 
     } 
     ] 
    } 

내가 시도 :

And match response[0].tagName contains ['CaseTag'] 


Then match each res contains 
    ... 
      { 
       {tagName: 'CaseTag', value: 'CaseTagMckAuto_TagValueOne', 
       entityType: 'Case', partitionId: 1, appId: 1,id: 46, 
       tagId: 1, entityId:1} 
      } 
    ... 

And match response[0] == {tagName: 'CaseTag', value: 
     'CaseTagMckAuto_TagValueOne', entityType: 'Case', partitionId: 1, 
     appId: 1,id: 46, tagId: 1, entityId:1} 

All three statements fails json it is not valid json array when i try giving 

And match response == {tagName: 'CaseTag', value: 
     'CaseTagMckAuto_TagValueOne', entityType: 'Case', partitionId: 1, 
     appId: 1,id: 46, tagId: 1, entityId:1}   

그것이 문자열이 아닌 말한다. 이 전화의 유효성을 검사하도록 도와주세요.

답변

1

둥지와 혼동하는 것처럼 보입니다. 여기에 나를 위해 작동 샘플은 단지 기능 파일에이 붙여에는 HTTP 할 필요가 없습니다 :

* def response = 
""" 
[ 
    { 
     "tagName":"CaseTag", 
     "value":"CaseTagMckAuto_TagValueOne", 
     "entityType":"Case", 
     "partitionId":1, 
     "appId":1, 
     "id":46, 
     "tagId":1, 
     "entityId":1 
    }, 
    { 
     "tagName":"CaseTag", 
     "value":"CaseTagMckAuto_TagValue", 
     "entityType":"Case", 
     "partitionId":1, 
     "appId":1, 
     "id":45, 
     "tagId":1, 
     "entityId":1 
    } 
] 
""" 
* match response == '#[2]' 
* match response[0].tagName == 'CaseTag' 
* match each response == { tagName: 'CaseTag', value: '#string', entityType: 'Case', partitionId: 1, appId: 1, id: '#number', tagId: 1, entityId: 1 } 
* match each response contains { tagName: 'CaseTag', entityType: 'Case', partitionId: 1, appId: 1, tagId: 1, entityId: 1 } 

은 JSON이 내에서 response을 얼마나 참조하십시오. 실제로 이것이 사실 인 경우

과 같이하려면 match을 사용하기 전에이 작업을 수행하십시오.