如何仅在机器人框架中更新嵌套json的一个键值

问题描述 投票:0回答:1

我是Robot Framework的新手。我有一个嵌套的Json,如下所示-

 "db_result": {
    "db_result_emp": [
      {
        "emp_id": 1110,
        "name": "abc",
        "address": 2,
        "street1": 1,
        "street2": 0,
      },
      {
        "emp_id": 1111,
        "name": "xyz",
        "address": 2,
        "street1": 1,
        "street2": 0,
      }
    ]

我想将emp id 1110的名称更新为我在关键字下面尝试过的```“ name”:“ zzz”

${updated_json_value}= Update Value To Json ${json_sub_header_key_content} $..name ${emp_name}

但是在emp_id的关键字更新上方,例如1110、1111如何仅更新emp_id 1110的键值?

python robotframework
1个回答
0
投票

首先对发布的JSON进行一些更正。您的对象中有尾随逗号,这是不允许的,因此您需要删除这些逗号:

{
    "db_result": {
        "db_result_emp": [
            {
                "emp_id": 1110,
                "name": "abc",
                "address": 2,
                "street1": 1,
                "street2": 0
            },
            {
                "emp_id": 1111,
                "name": "xyz",
                "address": 2,
                "street1": 1,
                "street2": 0
            }
        ]
    }
}

您可以使用此JSONPath

$..[?(@.emp_id==1110)].name
© www.soinside.com 2019 - 2024. All rights reserved.