0

我直接从文件加载 JSON,我需要验证 json 的属性数量。我在下面使用具有数据数组的 json 文件,我需要遍历所有数组并检索值(数组是动态的,所以不能硬核循环 2 次)我怎样才能获得响应中存在的数据数组的数量所以我可以遍历这些并获取值。json响应:

    {
      "total": 863,
      "data": [
        {
          "id": 6154616,
          "categories": {
            "total": 0,
            "data": []
          },
          "isAnonymized": false,
          "jobOrders": {
            "total": 0,
            "data": []
          },
          "jobSubmissions": {
            "total": 0,
            "data": []
          },
          "lastName": "u engineering",
          "leads": {
            "total": 0,
            "data": []
          },
          "timeZoneOffsetEST": 10
        },
        {
          "id": 85456552,
          "categories": {
            "total": 0,
            "data": []
          },
          "isAnonymized": false,
          "jobOrders": {
            "total": 0,
            "data": []
          },
          "jobSubmissions": {
            "total": 0,
            "data": []
          },
          "lastName": "Engineering",
          "leads": {
            "total": 0,
            "data": []
          },
          "timeZoneOffsetEST": 10
        }
      ]
    }

我在下面写了机器人代码,但它不起作用。

*** Settings ***
Library    RequestsLibrary    
Library    JSONLibrary 

*** Test Cases ***
check_response        
        ${response_data}=    Load JSON From File    ${response} 
        Log To Console    ${cnf_response}       
        ${no_of_arrays}=    get Length  $.data
        Log To Console  ${no_of_arrays}
       
4

1 回答 1

1

您正在使用示例中未定义的变量-它们可能在其他地方这样做,但总的来说,这不是您在 python 中处理字典键的方式,例如 Robot Framework。
假设${response_data}变量是作为字典解析的 json 文件,这就是如何寻址键/获取底层列表的长度:

${no_of_arrays}=    Get Length    $response_data['data'] 
于 2021-05-24T09:13:03.363 回答