热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

API开发神器Postman

PostmanhelpsyoudevelopAPIsfaster.豪华午餐PostmanPostman构建、管理、文档化API在线安装Chrome插件版https:chrome.g

Postman helps you develop APIs faster.

豪华午餐

《API开发神器-Postman》 Postman

Postman

构建、管理、文档化API

  • 在线安装
  • Chrome插件版
    https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop
  • MAC版
    https://www.getpostman.com/app/postman-osx
  • 离线安装
    使用已经安装好的Postman文件夹,机器默认存放目录:/Library/Application\ Support/Google/Chrome/Default/Extensions
    进入chrome://extensions/,选择Load unpacked extensions,加载Postman的文件夹

《API开发神器-Postman》 Newman(我真的不是MP3)

Newman

Newman is a command-line collection runner forPostman. It allows you to effortlessly run and test a Postman collection directly from the command-line. It is built with extensibility in mind so that you can easily integrate it with your continuous integration servers and build systems.

  • 安装: newman:npm install -g newman
  • 功能: 直接运行Postman的接口Collection数据(本地或远程)
  • 运行: 本地Postman保存的Collection内容

➜ Downloads newman -c Demo.postman_collection.json
Iteration 1 of 1
200 1479ms Open the url of Baidu. [GET] http://www.baidu.com
✔ Status code is 200
Summary:
Parent Pass Count FailCount
-------------------------------------------------------------
Collection Demo 1 0
Total 1 0

  • 运行远程Postman

➜ ~ newman -u https://www.getpostman.com/collections/676a42223e14bf54ad84
Iteration 1 of 1
200 240ms Open the url of Baidu. [GET] http://www.baidu.com
✔ Status code is 200
Summary:
Parent Pass Count FailCount
-------------------------------------------------------------
Collection Demo 1 0
Total 1 0

《API开发神器-Postman》 Interceptor

Interceptor

Postman interceptor brings the power of your Chrome window to Postman! You can set custom headers (including COOKIEs) from within Postman, and view COOKIEs already set on the domain. You can also capture requests being sent from Chrome and import them into Postman. This makes building APIs a breeze!

  • 安装
    https://chrome.google.com/webstore/detail/postman-interceptor/aicmkgpgakddgnaphhhpliifpcfhicfo/
  • 功能
  • 记录浏览器请求并直接导入到Postman
  • 可添加Filter,对浏览器中的请求进行过滤
初级使用

录制API-Interceptor

  • 设置浏览器中的Interceptor:打开开关、设置Filter(仅过滤www.jianshu.com
    《API开发神器-Postman》 Chrome中设置Interceptor
  • 设置Postman中的Interceptor:打开开关
    《API开发神器-Postman》 Postmsn中打开Interceptor
  • 开始录制:在Chrome浏览器中输入http://www.jianshu.com/p/4a677c5f79f1,回车后,查看Postman的请求录入
    《API开发神器-Postman》 录制API结果

回放API-Postman

  • 选择Postman中的API:Get http://www.jianshu.com/p/4a677c5f79f1
    《API开发神器-Postman》 指定API
  • 点击Send,进行回放。可查看到请求的返回状态码200、数据Body
    《API开发神器-Postman》 回放结果

指定API请求-Postman

  • URL输入框中,输入目标地址:http://www.jianshu.com/p/4a677c5f79f1。点击Send按钮
    《API开发神器-Postman》 1步搞定指定API请求
高级使用

规划管理API – Postman+Collection

将所有的API进行分类管理,如按模块、系统、类型

保存API至Collection

  • 选中需要保存的API,点击请求列表中的Save to collection
    《API开发神器-Postman》 Save to collection
  • 可将此API保存至已有的Collection新增Collection

重命令API请求-便于管理和查看

  • 切换到Collections列表,点击API请求的操作区,选择Edit
    《API开发神器-Postman》 Edit-API信息

常用权限应用尽有-Authorization

《API开发神器-Postman》 Authorization设置

  • Postman在请求时,可指定此次请求Auth方式
  • 可设置Auth中的具体内容,完全自行定义。如设置Basic Auth中的用户名和密码

《API开发神器-Postman》 Basic Auth

完全自定义的头-header

《API开发神器-Postman》 Header设置

  • 编辑已有Header中的元素
  • 新增Header中请求时,需要的Key:Value
  • 禁用及启用Header中的元素,对于不清楚API请求时,具体哪些是必须要传递的比较有用

完美的数据体-body

《API开发神器-Postman》 Body设置

  • 在请求需要发送数据体时,可通过设置body内容
  • 支持form-data/x-www-urlencoded/raw/binary,格式的数据

请求前还能做点事-Pre-request Script

《API开发神器-Postman》 Pre-request Script设置

  • 请求发送前,可进行一些脚本设置。如:设置或清除参数、变量

验证API请求结果-Tests

Postman提供了常用的测试功能:返回内容处理、状态码判断、请求超时等。点击后自动添加到Test脚本中

《API开发神器-Postman》 Test命令集合

进阶使用

带你快速走向各个环境-Environment

  • 添加QA环境URL地址变量
    《API开发神器-Postman》 添加QA环境的地址变量
  • 添加DEV环境的URL地址变量。此时就有两个环境地址
    《API开发神器-Postman》 QA、DEV,两个环境
  • 修改请求中的URL地址为:{{URL}}p/4a677c5f79f1,切换环境至QA环境
    《API开发神器-Postman》 变更URL、切换环境
  • 点击Send,请求QA环境中的数据
    《API开发神器-Postman》 真实的请求QA环境

使用Evnironment,可设置环境地址及环境中的不同数据,便于在跨环境后, 相同API可快速使用,减少调整API的成本

分享你的成果-导出/导入 or share

导出-Download

  • Postman中有Download功能(即导出功能),且Download后的可直接导入
  • 可将CollectionEnvironment的数据进行Download
    PS:导出的数据其实是JSON数据格式,可随意

导入-Import

  • 导入所有导出的数据
  • 被导入的数据格式与内容与导出时,完全一致

分享-share

  • share功能需要登录后,才能使用。且shared成功后,对应的链接会保存到用户数据中
    《API开发神器-Postman》 share-link
  • 点击链接,会直接打开share的API设置内容

导出/导入、share,便于在团队内部协作时使用,API的请求及管理团队化

海量执行你的请求 – Runner

当你有大量的API时,肯定想一次执行多个多次执行多个,Postman的Runner可以满足你的需求。

  • 调整API的结构、添加必要的测试验证
    《API开发神器-Postman》 调整
  • 打开Runner,设置执行参数:选择要执行的Collection、执行多少次Interation、请求的延迟Delay、数据文件、变量控件
    《API开发神器-Postman》 执行参数
  • Start Test查看运行结果RESULTS
    《API开发神器-Postman》 Results

CI挂起来 – Newman

直接使用Newman命令,快速把Postman与CI集成起来(直接使用shell命令,即可)。

newman -c demo.postman_collection --exitCode 1

PS:

  • 3.2.0版本之后,将原来的Jetpack(Runner/Newman)功能免费,以上所提到的功能全部免费使用
  • 本文使用版本为4.2.2
参考
  • Postman官网
    http://getpostman.com/
  • Newman
    https://www.npmjs.com/package/newman
  • Postman Collection
    http://www.getpostman.com/docs/collections
  • Postman Environment
    https://www.getpostman.com/docs/test_multi_environments
  • How to write powerful automated API tests with Postman, Newman and Jenkins
    http://blog.getpostman.com/2015/09/03/how-to-write-powerful-automated-api-tests-with-postman-newman-and-jenkins/

推荐阅读
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 在Kubernetes上部署JupyterHub的步骤和实验依赖
    本文介绍了在Kubernetes上部署JupyterHub的步骤和实验所需的依赖,包括安装Docker和K8s,使用kubeadm进行安装,以及更新下载的镜像等。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文由编程笔记小编整理,主要介绍了使用Junit和黄瓜进行自动化测试中步骤缺失的问题。文章首先介绍了使用cucumber和Junit创建Runner类的代码,然后详细说明了黄瓜功能中的步骤和Steps类的实现。本文对于需要使用Junit和黄瓜进行自动化测试的开发者具有一定的参考价值。摘要长度:187字。 ... [详细]
  • 如何提高PHP编程技能及推荐高级教程
    本文介绍了如何提高PHP编程技能的方法,推荐了一些高级教程。学习任何一种编程语言都需要长期的坚持和不懈的努力,本文提醒读者要有足够的耐心和时间投入。通过实践操作学习,可以更好地理解和掌握PHP语言的特异性,特别是单引号和双引号的用法。同时,本文也指出了只走马观花看整体而不深入学习的学习方式无法真正掌握这门语言,建议读者要从整体来考虑局部,培养大局观。最后,本文提醒读者完成一个像模像样的网站需要付出更多的努力和实践。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • 本文介绍了计算机网络的定义和通信流程,包括客户端编译文件、二进制转换、三层路由设备等。同时,还介绍了计算机网络中常用的关键词,如MAC地址和IP地址。 ... [详细]
  • Linux磁盘的分区、格式化的观察和操作步骤
    本文介绍了如何观察Linux磁盘的分区状态,使用lsblk命令列出系统上的所有磁盘列表,并解释了列表中各个字段的含义。同时,还介绍了使用parted命令列出磁盘的分区表类型和分区信息的方法。在进行磁盘分区操作时,根据分区表类型选择使用fdisk或gdisk命令,并提供了具体的分区步骤。通过本文,读者可以了解到Linux磁盘分区和格式化的基本知识和操作步骤。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
author-avatar
英雄泪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有