• postman提取返回值


    Postman是做接口测试的,但是很多接口并不是直接就能测,有的需要一些预处理。比如说身份认证,需要传递一个token。如果做网页测试,一般打开登陆界面的时候就会生成一个token,如果返回值是json格式,用Postman从中提取值是很简单的,在Tests中输入。

    1.返回值是json格式,其中的某个参数的值又是一个json格式;需要获取第二个层级的json参数值,可以如下:

    var jsonData=JSON.parse(responseBody);  //获取body中返回的所有参数
    var jdata=jsonData.data;  //获取其中data的值,jdata是一个json格式
    pm.environment.set("token",JSON.parse(jdata).JwtKey);    //再从jdata中获取其中的JwtKey参数值

     send之后点右上角小眼睛,如果环境变量取到值的话这里会有显示的:

    2.返回值是json格式,其中的某个参数的值又是一个数组格式,数组的每一个值又是json格式;如果获取第三个层级的json某个参数值,可以如下:

    pm.test("运营商ID 1111", function () {
    var jsonData = pm.response.json();    //获取body返回值的全部参数
    var jsonDicData = jsonData.data;    //获取其中的data参数
    var jsonDicData = jsonData.data;
    pm.expect(jsonDicData[0].oI_ID).to.eql("1111");   //jsonDicData[0]是获取数组中的第一个值,这个值也是一个json格式。 .oI_ID 是获取第三个层级中json某个参数值
    });

    总结

    Postman从响应中提取值的方法:

    • 从json中提取

      var jsonData =JSON.parse(responseBody);
      
    • 从html的Header中提取

      var value = postman.getResponseHeader("Access-Token");
      pm.environment.set("Access-Token",value);
      
    • 从html的body中提取

      var jsonObject = xml2Json(responseBody);
      

    将json object转换成字符串的函数JSON.stringify(jsonObject)

    参考文章:https://jlhxxxx.github.io/postman-start.html

  • 相关阅读:
    Kubernetes弹性伸缩全场景解读(五)
    阿里靠什么支撑 EB 级计算力?
    云原生生态周报 Vol. 2
    国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google
    GitOps:Kubernetes多集群环境下的高效CICD实践
    阿里开发者招聘节 | 面试题01:如何实现一个高效的单向链表逆序输出?
    noip2012 开车旅行
    noip2012 借教室
    noip2012 同余方程
    noip2012 国王游戏
  • 原文地址:https://www.cnblogs.com/zixia/p/10877807.html
Copyright © 2020-2023  润新知