我在机器人框架中编写了一个测试用例。我在下面的json字符串中得到了响应:
{"responseTimeStamp":"1970-01-01T05:30:00",
"statusCode":"200",
"statusMsg":"200",
"_object":{"id":"TS82",
"name":"newgroup",
"desc":"ttesteste",
"parentGroups":[],
"childGroups":[],
"devices":null,
"mos":null,
"groupConfigRules" {
"version":null,
"ruleContents":null
},
"applications":null,"type":0
}
}
由此我想采取" _object"使用:
${reqresstr} = ${response['_object']}
...但我收到了错误"没有名称的关键字' ='发现"错误
如果我尝试以下方法:
${reqresstr}= ${response['_object']}
...我收到错误"关键字名称不能为空。"我尝试删除' ='但仍然会得到同样的错误。
如何提取' _object'从那个json字符串?
答案 0 :(得分:1)
当使用“=”进行具有空格分隔格式的变量赋值时,必须确保在“=”周围只有一个空格。您的第一个示例显示您在“=”的两侧都有多个空格。您必须在任一侧只有一个空格,否则机器人会认为空格是关键字和参数之间的分隔符。
对于“关键字不能为空”错误,变量名后面的第一个单元格必须是关键字。与传统编程语言不同,您无法直接将字符串分配给变量。
要将变量设置为字符串,您需要使用Set Variable关键字(或其中一种变体,例如Set Test Variable)。例如:
${reqresstr}= Set variable ${response['_object']}
答案 1 :(得分:0)
${reqresstr}= '${response["_object"]}'
在=
答案 2 :(得分:-1)
命令中存在语法错误。确保${reqresstr}
和=
之间有空格。
使用上面的示例:
${reqresstr} = ${response['_object']}