RobotFramework接口测试中如何解析json以及如何处理多层json中中括号[ ]的内容
目前,接口返回值一般采用json格式的数据,如下所示:
{
"error_code": 0,
"error_msg": "success",
"result": {
"items": [
{
"system_id": "dat",
"database": "dat",
"table_name": "test_day_data_0119",
"type": "FACT",
"granularity": "E1",
"pre_ide_job_id": "9999",
"ide_job_id": "6666"
}
]
}
}
json是有层级结构的,所以,处理json也要理清它的结构。
一、解析json数据需要用到的第三方库如下:
1、RequestsLibrary,安装命令:pip install requests
2、HttpLibrary,安装命令:pip install robotframework-httplibrary
3、HttpLibrary.HTTP,这个库是在HttpLibrary中,HTTP是HttpLibrary的一个class
4、json,安装命令:pip install jsonpatch
5、Collections,这个库是python自带的,直接引入即可
二、使用关键字get json Value获取json数据
run日志如下

三、处理中括号[ ]中的内容
首先,需要将json中括号的部分处理成python的dict格式,关键字可以使用:
(1)RequestsLibrary中的to json关键字
(2)HttpLibrary.HTTP中的parse json关键字
(3)json中的loads关键字
这几种都可以实现转换功能,我这里使用的是To Json
然后,我们使用get from dictionary取出所需要的值,其后两个参数,第一个参数${var1todict[0]}是指上一步json转成的dictionary,注意要有下标,从0开始:[0];第二个参数是我们要取的key。
取出值之后,就可以和我们的预期做比较了,使用关键字should be equal
方法、思路、关键字并不是死板固定的,这里只是介绍其中一种,大家可以多去摸索其他关键字来实现解析json的功能。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)