[英]Robot Framework - Convert JSON to dictionary
我在使用 Robot Framework 将 JSON 文件转换为字典时遇到问题。
*** Variables ***
${MY_DATA_TABLE VALUES}
${MY_JSON_FILE} *path_to_JSON\test.json*
*** Keywords ***
Converting a JSON File
${MY_DATA_TABLE_VALUES_TEMP} get file ${MY_JSON_FILE}
${MY_DATA_TABLE_VALUES} evaluate json.loads('''${MY_DATA_TABLE_VALUES_TEMP}''') json
${MY_DATA_TABLE_VALUES}= convert to dictionary ${MY_DATA_TABLE_VALUES}
[Return] ${MY_DATA_TABLE_VALUES}
我的印象是 json.loads 函数将返回一个字符串而不是字典,这就是我尝试转换为字典的原因。
我打算在更多的 RF 关键字中访问变量 ${MY_DATA_TABLE_VALUES}。
任何指导将不胜感激。 谢谢
我的印象是 json.loads 函数将返回一个字符串而不是字典
那是不正确的。 它返回一个字典。 你不需要调用convert to dict
,你的代码没有它也能正常工作。
这是一个工作示例:
*** Settings ***
Library Collections
*** Variables ***
${MY_DATA_TABLE_VALUES_TEMP} {"foo": "this is foo", "bar": "this is bar"}
*** Keywords ***
Converting a JSON File
${MY_DATA_TABLE_VALUES} evaluate json.loads($MY_DATA_TABLE_VALUES_TEMP) json
[Return] ${MY_DATA_TABLE_VALUES}
*** Test Cases ***
Example
${data}= converting a json file
${datatype}= evaluate str(type($data))
should be equal ${datatype} <class 'dict'>
should be equal ${data['foo']} this is foo
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.