zoukankan      html  css  js  c++  java
  • postman提取接口的返回值及动态设置变量(一)

    一、提取接口返回值
     
    1.当返回值是返回JSON时
    let json = JSON.parse(responseBody);  // responseBody是包含整个返回内容的字符串
    let foobar = json.foo.bar[0].foobar;  //提取某字段的值:  假设结构为 {"foo": {"bar": [{"foobar": 1}, {"baz": 2}]}}
    

      

    2.当返回值是返回HTML时
    方法一:用正则表达式匹配
    let foo = responseBody.match(/foo/g);   // g 全局 i 不分大小写 m 多行 tests['blahblahblah'] = foo[0] === 'bar'; // 正则里包含变量时: let foo = 'xxx'; let bar = responseBody.match(new RegExp(`^${foo}.*$`, 'g');
    方法二(比较笨拙)
    用CheerioJS库(可以用jQuery语法): const $ = cheerio.load(responseBody); $.html() // 整个网页 $('title').text(); // <title>标签里的文字
     
    二、动态设置变量

    1.设置环境变量

    postman.setEnvironmentVariable("key", "value");
    pm.environment.get("key");//postman  5.0以上版本设置环境变量的方法
    pm.environment.unset("variable_key"); //清除环境变量

    2.设置全局变量

    postman.setGlobalVariable("key", "value");
    pm.globals.set("variable_key", "variable_value"); //postman 5.0以上版本设置全局变量方法
    pm.globals.get("variable_key"); //获取全局变量
    pm.globals.unset("variable_key"); //清除全局变量

     三、调试中常用的方式

    1.ctrl+alt+C 打开postman控制台

    console.log(foobar);  //在控制台输出获取的结果
    

      

    4.检测JSON中的某个值是否等于预期的值

    var data = JSON.parse(responseBody); tests["Your test name"] = data.value === 100; //如果通过postman里面会有绿色标识
    

      

  • 相关阅读:
    golang学习----nil值
    CentOS配置multipath
    oracle基础-创建表空间
    oracle数据库基本命令
    CentOS使用fdisk扩展磁盘空间
    CentOS增加swap分区
    VMWARE错误-"VirtualInfrastructure.Utils.ClientsXml"的类型初始值设定项引发异常
    windows server 2008远程桌面最大连接数设置
    windows sserver 2008远程桌面端口修改
    iSCSI配置
  • 原文地址:https://www.cnblogs.com/unknows/p/10032015.html
Copyright © 2011-2022 走看看