前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Postman日记之多个Json如何断言

Postman日记之多个Json如何断言

作者头像
测试小兵
发布2019-07-24 16:56:14
2.1K0
发布2019-07-24 16:56:14
举报
文章被收录于专栏:猪圈子猪圈子

前俩篇文章给大家简单介绍了下postman设置全局变量以及断言的使用方法,今天我给大家简单举个例子讲讲多层级的断言我们该如何去断言,在看这篇文章之前如果对于json代码层级还不太清楚地同学, 可以先百度简单了解一下,进入正题

言归正传,简单的了解下我们的postman,对于一个测试人员来讲,测试接口是一个很重要的流程,而postman是测试接口的一个常用工具之一。

对于刚刚使用postman的新手来讲,有一些地方可能不是很懂,之前在帮同事使用postman中也遇见到过此类情况。现总结一部分,以供参考,安装以及环境变量设置请看上一篇Postman之设置环境变量

最近在使用postman工具进行接口测试过程中,针对业务验证的接口验证的内容不同,自己使用的几种断言,以及积累查询百度文档对于断言常用的几种类型作个记录便于后期进行查询以及使用。postman日记之断言篇

在使用断言过程简单碰到了json字符串里有多个json我们想要断言其中一个 怎么断言 我们开看看吧 看看实例格式,这都是我们平常很常见的json格式。介绍一本书籍,欢迎购买使用。

代码语言:javascript
复制
{
    "status":true,
    "data":{
        "name":"石某某",
        "code":"20*****06",
        "role":"J",
        "all_roles":[
            "P",
            "J",
            "M"
        ],
        "delivery_center":{
            "name":"&&&&&&&",
            "code":"11111",
            "status":"1"
        },
        "store_lists":[
            {
                "store_code":"xxxxx46",
                "store_name":"xxxxxxxxxx寓店",
                "is_join":"x"
            },
            {
                "store_code":"xxxxx6",
                "store_name":"xxxxxxxx店",
                "is_join":"x"
            },
            {
                "store_code":"xxxxxx0",
                "store_name":"xxxxxx路店",
                "is_join":"x"
            },
            {
                "store_code":"7xxxxx5",
                "store_name":"xxxxxxx商业街店",
                "is_join":"x"
            }
        ],
        "error_code":0
    }
}

像一般的情况如果我们断言data下面的某个字段是不是很简单就可以直接使用断言判断

例:

代码语言:javascript
复制
{
    "status":true,
    "data":{
        "name":"石某某",
        "code":"20*****06",
        "role":"J",
        "all_roles":[
            "P",
            "J",
            "M"
        ],
        "delivery_center":{
            "name":"&&&&&&&",
            "code":"11111",
            "status":"1"
        }
 }

我们执行使用断言方法:

检查response body中JSON某个字段值

备注:response body:JSON value check

代码语言:javascript
复制
pm.test("Your test name", function () {

    var jsonData = pm.response.json();

    pm.expect(jsonData.value).to.eql(100);

});

//判断data json字符串中的name是否正确

代码语言:javascript
复制
pm.test("判断data json字符串中的name是否正确", function () {

    var jsonData = pm.response.json();

pm.expect(jsonData.data.name).to.eql("石某某");});

那么如果我们要判断data下面的那个store_lists字段下的多个json字符串怎么断言呢???

代码语言:javascript
复制
{
    "status":true,
    "data":{
        "name":"石某某",
        "code":"20*****06",
        "role":"J",
        "all_roles":[
            "P",
            "J",
            "M"
        ],
        "delivery_center":{
            "name":"&&&&&&&",
            "code":"11111",
            "status":"1"
        },
        "store_lists":[
            {
                "store_code":"xxxxx46",
                "store_name":"xxxxxxxxxx寓店",
                "is_join":"x"
            },
            {
                "store_code":"xxxxx6",
                "store_name":"xxxxxxxx店",
                "is_join":"x"
            }
    }
}

例如我们判断这个

//判断日周期数据store_lists字段,json中第二个字符串store_code是否为"xxxxx6"

代码语言:javascript
复制
pm.test("判断store_lists字段,json中第二个字符串store_code是否为xxxxx6", function () {
    var jsonData = pm.response.json();
pm.expect(jsonData.data.store_lists[1].store_code).to.eql("xxxxx6");

这里我们将这里的断言跟上面我们判断一个json层级你比较一下,发现什么不一样的地方吗?? 我们data下面的子json写法都一样,不过我们是在子层级后面加了一个“[]”里面 + 数字 0代表第一个json 1代表 第二个json;

然后后面也照常接上要断言的key值判断value是否匹配 ,自己可以拿实际场景 测试一下看下是不是这么回事,其实很简单,json不熟的前面说了,百度下学习下json~

代码语言:javascript
复制
pm.expect(jsonData.data.name).to.eql("石某某");});
pm.expect(jsonData.data.store_lists[1].store_code).to.eql("xxxxx6");

我们看看上面进行返回回来的结果,结果为pass ,拿起自己项目试试学习这个知识点

多个json怎么断言就是这些,根据相关工具的实际操作结合应用起来。后续会持续学习更新,欢迎关注!


本文来自:来源于公众号猪圈子-强势来袭-部门图片来源于网络,如有侵权请及时联系删除

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python测试社区 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档