zoukankan      html  css  js  c++  java
  • postman使用技巧

    link: http://blog.csdn.net/u011320646/article/details/77141876

    前言

    随着web技术的发展,特别是前后端分离的架构主键成为主流,我们后端程序员调试的时候不再依赖页面去操作,而是直接调试接口。对于没有权限控制的GET接口而言,这是一个非常轻松的工作,但是对于有权限的或者使用了其他方法(POST,PUT,DELETE等)的Rest接口,事情就不那么美好了,还好有postman这个神器能够帮我们解决这些问题,基本的使用我就不讲了,这一块网上的教程很多。这里主要提一些相对来说比较高级的用法。

    环境设置

    这其实也算是一个比较基本的功能了,由于跟后续的操作相关,所以也提一下。

    现在我们开发的测试环境是3套,分别是开发、测试、预发(或者线上环境)。刚使用postman的时候我还不熟悉,于是傻傻的给每套环境配了一项配置。其实postman的开发者早就想到了这种情况,postman提供了环境变量的设置,相信这点大家都很熟悉。放在这个例子里就很直观了,我们配置相应的3套环境就可以了,如下图所示

    这里写图片描述

    选择右上角红色区域,下拉框中选择Management Environments就可以进入图示的环境编辑页面,我这里增加了三套环境

    这里写图片描述

    环境配置里面可以编辑key-value的环境变量,环境变量配置好了之后该怎么使用呢。这个也比较简单,形如{{keyname}}这样就可以了,环境变量可以应用的地方有URL、URL参数、header、header presets、authorization、body这些地方。

    这里写图片描述

    变量

    在环境设置里面,我们提到了在环境里面配置环境变量,事实上,变量不止这样一种类型,一共有四个类型

    • 全局变量
    • 环境变量
    • 局部变量
    • 数据(只能在Collection runner中使用)

    他们的覆盖优先级是从高到低,也就是说数据是最高优先级的,全局的是最低的。数据变量实际上就是外部加载的数据,比如本地CSV或者JSON文件。

    修改变量的值除了上面提到的通过环境管理页面来修改,还可以通过脚本来修改。

    // 修改环境变量setEnvironmentVariable("domain", "localhost:8080"); // 获取环境变量getEnvironmentVariable("domain"); // 设置全局变量setGlobalVariable("date", new Date()); // 获取全局变量getGlobalVariable("date"); // 也在URL、header等中使用{{date}}来动态替换

    好了,了解了这些基本概念之后就可以用postman实现一些高级的特性了。

    示例1.自动登录

    在我没有学习到变量设置之前,都是自己傻傻的去浏览器登陆完之后再把cookie或者token拷贝到postman上做后续的测试,问了其他的同事他们都觉得还好并不是很麻烦。在一个上线前的夜晚,由于token有有效期,当我被反复的测试虐的死去活来的时候,终于下定决心啃掉这个硬骨头了。于是我看了下官方文档,未来瞬间就光明了!

    我的办法是添加一个登陆的request,在登陆完成之后,使用postman的tests功能利用JavaScript脚本把token存储到全局变量中,然后其他地方使用全局变量设置token,这样就要网页操作一般顺滑了。 
    这里写图片描述

    测试其他接口的时候使用变量代替具体的值就好了。 
    这里写图片描述

     

    同样适用于cookie,Manage Cookies似乎无法操作,但是可以直接通过设置http header来操作 
    这里写图片描述

     

     

     

     

    随着web技术的发展,特别是前后端分离的架构主键成为主流,我们后端程序员调试的时候不再依赖页面去操作,而是直接调试接口。对于没有权限控制的GET接口而言,这是一个非常轻松的工作,但是对于有权限的或者使用了其他方法(POST,PUT,DELETE等)的Rest接口,事情就不那么美好了,还好有postman这个神器能够帮我们解决这些问题,基本的使用我就不讲了,这一块网上的教程很多。这里主要提一些相对来说比较高级的用法。

    环境设置

    这其实也算是一个比较基本的功能了,由于跟后续的操作相关,所以也提一下。

    现在我们开发的测试环境是3套,分别是开发、测试、预发(或者线上环境)。刚使用postman的时候我还不熟悉,于是傻傻的给每套环境配了一项配置。其实postman的开发者早就想到了这种情况,postman提供了环境变量的设置,相信这点大家都很熟悉。放在这个例子里就很直观了,我们配置相应的3套环境就可以了,如下图所示

    这里写图片描述

    选择右上角红色区域,下拉框中选择Management Environments就可以进入图示的环境编辑页面,我这里增加了三套环境

    这里写图片描述

    环境配置里面可以编辑key-value的环境变量,环境变量配置好了之后该怎么使用呢。这个也比较简单,形如{{keyname}}这样就可以了,环境变量可以应用的地方有URL、URL参数、header、header presets、authorization、body这些地方。

    这里写图片描述

    变量

    在环境设置里面,我们提到了在环境里面配置环境变量,事实上,变量不止这样一种类型,一共有四个类型

    • 全局变量
    • 环境变量
    • 局部变量
    • 数据(只能在Collection runner中使用)

    他们的覆盖优先级是从高到低,也就是说数据是最高优先级的,全局的是最低的。数据变量实际上就是外部加载的数据,比如本地CSV或者JSON文件。

    修改变量的值除了上面提到的通过环境管理页面来修改,还可以通过脚本来修改。

    // 修改环境变量
    setEnvironmentVariable("domain", "localhost:8080");
    // 获取环境变量
    getEnvironmentVariable("domain");
    
    // 设置全局变量
    setGlobalVariable("date", new Date());
    // 获取全局变量
    getGlobalVariable("date");
    
    // 也在URL、header等中使用{{date}}来动态替换
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    好了,了解了这些基本概念之后就可以用postman实现一些高级的特性了。

    示例1.自动登录

    在我没有学习到变量设置之前,都是自己傻傻的去浏览器登陆完之后再把cookie或者token拷贝到postman上做后续的测试,问了其他的同事他们都觉得还好并不是很麻烦。在一个上线前的夜晚,由于token有有效期,当我被反复的测试虐的死去活来的时候,终于下定决心啃掉这个硬骨头了。于是我看了下官方文档,未来瞬间就光明了!

    我的办法是添加一个登陆的request,在登陆完成之后,使用postman的tests功能利用JavaScript脚本把token存储到全局变量中,然后其他地方使用全局变量设置token,这样就要网页操作一般顺滑了。 
    这里写图片描述

    测试其他接口的时候使用变量代替具体的值就好了。 
    这里写图片描述

    同样适用于cookie,Manage Cookies似乎无法操作,但是可以直接通过设置http header来操作 
    这里写图片描述

  • 相关阅读:
    SQLyog
    远程连接设置
    [转]Oracle/Altibase数据库中Sequence的用法
    worklight 初识
    C# Excel
    C#+AE 叠加分析
    Model Buider中 List和Series的区别[转]
    动态分段
    优化工具箱概述
    创建栅格数据
  • 原文地址:https://www.cnblogs.com/bruce-he/p/8478576.html
Copyright © 2011-2022 走看看