如何在robot框架中只更新嵌套json的一个键值



我是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的关键字更新,即11101111如何仅更新emp_id 1110的键值?

首先对发布的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

相关内容

最新更新