robotframework - 将 JSON 文件加载到机器人框架中
问题描述
我正在尝试加载 JSON 文件并使用这些值根据我的测试执行一些操作。我尝试加载我认为正确的 json 值,但是在尝试记录输出时,我收到错误消息:
Resolving variable '${qa["REQUEST_ID"]}' failed: TypeError: list indices must be integers or slices, not str
不完全确定这意味着什么,因为我是 Robot Framework 的新手。这是我为加载和记录值所做的:
${file} Get File ${CURDIR}/RequestIDs.json
${qa} Evaluate json.loads('''${file}''') json
Log To Console ${qa["REQUEST_ID"]}
Json 文件看起来像:
[
{
"REQUEST_ID" : 10513
},
{
"REQUEST_ID" : 48156
},
{
"REQUEST_ID" : 455131
}
]
所以基本上我想获取"REQUEST_ID"
值并在文本字段中输入。
解决方案
看看你的 json 的结构——它是一个字典列表;所以你必须首先指定你想要的列表成员,然后是它的 REQUEST_ID 字段:
Log To Console ${qa[0]["REQUEST_ID"]
# print the value from all present dictionaries in the list:
FOR ${member} IN @{qa}
Log To Console ${member["REQUEST_ID"]
END
推荐阅读
- sql - SQL 查询查找具有多个值的结果
- c# - 增加 system.diagnostics 数据包日志记录大小
- python - 想要在 matplotlib 图例上绘制不同大小/颜色的椭圆
- java - 单击按钮以在新活动中更改颜色-android studio
- javascript - 无法在 Chrome 77 中收听“popstate”事件?
- c# - 检查写入权限是被接受还是被拒绝
- javascript - 简单的 Fotorama 图像阵列
- reactjs - 每次保存代码时,有没有办法在 React 项目上运行 linter?
- c# - NLog ReconfigExistingLoggers 创建新日志?
- sql - T-SQL TRIGGER 在 INSERT 数据时返回比预期多 1 个“受影响的行”