Postman的一点使用技巧

Stella981
• 阅读 959

Postman Makes API Development Simple.
Developers use Postman to build modern software for the API-first world.

  本文介绍了一点点postman的常用功能,更多高级特性及用法请访问postman文档

环境变量(environment variable)

  postman中使用环境的概念,分为局部环境(environment)和全局环境(globals),用户可以将会变化的接口参数(如B接口的入参是来自A接口的返回报文、接口地址等)作为变量以key-value的形式定义在一个环境中,当做接口测试时直接选择相应的环境即可。
  在postman的右上角进行设置:
  Postman的一点使用技巧

使用变量

  使用变量特别简单和方便,只需用两个大括号引用即可,当发起如下接口请求时url和userId变量将会替换成对应环境中的值。
  https://{{url}}/app/user/{{userId}}

postman内置的变量
  • {{$guid}} : Adds a v4 style guid
  • {{$timestamp}}: Adds the current timestamp
  • {{$randomInt}}: Adds a random integer between 0 and 1000

脚本(script)

  postman中引入了script脚本,可以在发送请求前和发送请求后执行,可以和postman的环境完美结合,并且可以用来对接口的返回结果进行校验,其SNIPPETS定义了很多快捷的使用方式,直接点击相应的链接会在左边生成对应的模板代码。
  Postman的一点使用技巧

发送请求前处理
使用脚本生成变量值
// 生成随机身份证号
function getId_no(birthday){
    var coefficientArray = [ "7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"];// 加权因子
    var lastNumberArray = [ "1","0","X","9","8","7","6","5","4","3","2"];// 校验码
    var address = "420101"; // 住址
    var s = Math.floor(Math.random()*10).toString() + Math.floor(Math.random()*10).toString() + Math.floor(Math.random()*10).toString();
    var array = (address + birthday + s).split("");  
    var total = 0;
    for(i in array){
      total = total + parseInt(array[i])*parseInt(coefficientArray[i]);
    }    
    var lastNumber = lastNumberArray[parseInt(total%11)];
    var id_no_String = address + birthday + s + lastNumber;
    return id_no_String;
}
pm.environment.set("certNo", getCertNo(19900101));
当接口请求报文需要使用certNo字段时,直接用{{certNo}}引用即可。
发送请求后处理
解析接口返回信息
var responseBody = pm.response.text();
var jsonObj = JSON.parse(responseBody);
pm.environment.set("bizNo", jsonObj.bizData.bizNo);
解析接口返回数据,可以进行对应的业务逻辑处理,将返回的业务字段设置到环境中便于下一个接口使用。

集合(collections)

  postman用集合来组织接口,用户可以将多个业务相关的接口放在同一个集合中,以集合为单位一次执行集合中的所有接口(当需要批量执行某个接口时简直不要太方便)。
  Postman的一点使用技巧

使用data file

  在执行一个集合时可以使用data file来引入变量的值,支持CVS和JSON格式的文件,environment中的变量会覆盖文件中的同名变量。

  环境、集合都支持导出和导入,方便和其他小伙伴共享。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
5个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Stella981 Stella981
3年前
Postman 使用方法详细介绍
1,下载安装:https://www.getpostman.com/apps2,打开Postman,如图所示:!(https://oscimg.oschina.net/oscnet/00f434cd831f2f74fea6f6d7b86bc46a751.png)3,创建一个接口项目!(https://oscimg.oschina.
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
11个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这