robotframework json解析

用robotframework做接口测试,现在用的最多的就是json格式的数据,刚开始接触会感觉一脸懵逼,不知道怎么去取里面的值。在这里简单介绍一下,其实本身json取值不会太难,只要理解层次关系,一层一层的挖,还是比较好处理的。

主要用一下json示例:
{
    "id": "1496654252",
    "code": 0,
    "msg": "ok",
    "data": {
        "tag_list": [
            {
                "game_id": "28",
                "game_name": "王者荣耀"
            },
            {
                "game_id": "29",
                "game_name": "镇魔曲"
            }
        ]
    }
}
 
一、首先说一下引入库,做接口测试少不了依赖库,但是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自带的,直接引入即可
6、HttpLibrary.HTTP
 
 
二、对于大部分的json值,直接使用get json Value关键字即可
Robotframework之json解析
Robotframework之json解析

三、取json中用中括号的部分[]
1.首先需要先把json的object格式转成python的Dictionary,在第一点中引入的几个包都涉及了这个转换,下面一一举例
(1)RequestsLibrary中的to json关键字
(2)HttpLibrary.HTTP中的parse json关键字
(3)json中的loads关键字
Robotframework之json解析
上面三个库用任一个关键字都可以,其实去看源码,就会发现,不管是to json,还是parse json,其实用的都是loads方法
Robotframework之json解析

 
2.取值
 使用Get From Dictionary关键字,此关键字来源与Collections库;可以看到Get From Dictionary后面跟着两个参数,分别是json转成的Dictionary,取第一个对象内的值,从0下标开始
Robotframework之json解析

Robotframework之json解析
 
原文地址:https://www.cnblogs.com/yigui/p/9367998.html