如何使用postman?


1.背景介绍

当开发人员需要调试一个网页是否运行正常,并不是简简单单地调试网页的HTML、CSS、脚本等信息是否运行正常,更加重要的是网页能够正确是处理各种HTTP请求,毕竟网页的HTTP请求是网站与用户之间进行交互的非常重要的一种方式,在动态网站中,用户的大部分数据都需要通过HTTP请求来与服务器进行交互。Postman插件就充当着这种交互方式的“桥梁”。


2.知识剖析

Postman 是一个非常棒的Chrome扩展,提供功能强大的API & HTTP 请求调试。

它能够发送任何类型的HTTP requests (GET, HEAD, POST, PUT..),附带任何数量的参数+ headers;

支持不同的认证机制(basic, digest, OAuth),接收到的响应语法高亮(HTML,JSON或XML);

Postman 能够保留了历史的请求,这样我们就可以很容易地重新发送请求,有一个“集合”功能,用于存储所有请求相同的API/域。

1.下载安装postman,postman安装方法教程

2.有时需要在不同的环境下跑相同的测试,此时可以通过设置环境变量来动态选择。点击右上角的设置按钮:Manage Environments,填写该环境的名称:如测试环境,并在key和value中填写需要的键值,创建好所有环境后,在右上角下拉列表选择需要的环境就好


postman界面介绍:


1、postman调试的历史记录,保留了每次测试时的请求参数;

2、在Postman中,Collection类似文件夹,可以把同一个项目的请求放在一个Collection里方便管理和分享,Collection里面也可以再建文件夹;

3、设置environment variables(环境变量)和global variables(全局变量),点击右边的眼睛可以快速查看当前的变量;

4、选择HTTP 请求类型的地方,各种常见的不常见的非常全;

5、请求URL,两层大括号表示这是一个环境变量,可以在3的位置选择当前的environment,环境变量就会被替换成该environment里variable的值;

6、点击可以设置URL参数的key和value;

7、点击发送请求;

8、点击保存请求到Collection,如果要另存为的话,可以点击右边的下箭头;

9、设置鉴权参数,可以用OAuth之类的;

10、自定义HTTP Header;

11、设置Request body;

12、显示发起请求之前执行的脚本;

13、在收到response之后执行的测试;

14、返回数据的格式,Pretty可以看到格式化后的JSON,Raw就是未经处理的数据,Preview可以预览HTML页面。


3.常见问题

post请求里面,有多种传参方式:

1.form-data

这种方式需要在header里面声明Content-Type,然后再添加表单内容,另外需要注意的是,有文件上传操作的时候,是可以使用表单上传的,参数里面是可以选择文件的。后端获取的时候要注意,有些框架对同时存在参数和文件的请求获取顺序是有要求的,必须先获取文件再获取其他参数,不然会报错。

2.x-www-form-urlencoded

同样的需要在header里面声明Content-Type,x-www-form-urlencoded类型的数据会将表单转换成键值对。

3.raw

可以上传json/javascript等格式的数据,需要在header里声明不同的Content-Type,以前遇到过传对象时,使用form-data无法完成,就手动用raw拼成了json对象


4.编码实战

POSTMAN的断言

1.判断HTTP返回状态码为200 2.判断响应正文中是否包含:"statusCode":200 3. 解析响应正文,并判断statusCode的值是200,message的值是”Success.在SNIPPETS中,往下拉,有一项”Status code:Code is 200”,这个就是为场景中的第一条准备的,就是判断HTTP返回状态码是否为200。点击这一项,可以看到在其左边出现了:


其中tests["Status code is 200"]中的tests是一个内置对象,tests["Status code is 200"]是指为这个断言起个名称叫”Status code is 200”,这个名称可以自行修改。responseCode.code === 200中的responseCode是内置对象,responseCode对象中有个属性是code,是指HTTP状态码的code,判断code是否为200.综合起来,这句代码的意思是:名称为”Status code is 200”的断言中,判断responseCode对象的code属性值是否为200.同样在SNIPPETS中,找到一项”Response body:Contains string”,点击后,在其左边出现了:


我们需要修改一下:


在第三条,很显然我们需要解析JSON串,所以,在SNIPPETS中找到”Response body:JSON value check”并点击,在其左边出现了:


这里面其实是JS代码,jsonData变量其实是解析完JSON后的对象,在JS中,一个JSON对象获取其属性的值,直接是用jsonData.value,于是,我们把代码给修改一下:


这样一来,我们可以看到一共有tests的断言4个,点击Send,发送请求,在响应区内可以看到如下图:


PPT点击

视频点击


参考文献

参考一:API自动化测试利器-postman

参考二:Postman安装及使用入门教程

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,056评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,842评论 2 378
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,938评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,296评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,292评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,413评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,824评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,493评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,686评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,502评论 2 318
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,553评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,281评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,820评论 3 305
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,873评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,109评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,699评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,257评论 2 341

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,573评论 18 139
  • 如何使用postman? 1.背景介绍 当开发人员需要调试一个网页是否运行正常,并不是简简单单地调试网页的HTML...
    小翼_b998阅读 634评论 0 0
  • 前言: Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 一、get请求 GET请...
    小喜_ww阅读 23,741评论 2 43
  • 第九章 一个心理治疗师对美好生活的见解——充分发挥人的机能 大约在1952年或者1953年的冬天,我在南方度假...
    暖阳_1332阅读 475评论 0 1
  • 我希望 你还是你,单纯善良 不受世俗影响 我希望 你还是你,笑声朗朗 无惧世事沧桑 我希望 你还是你,依旧轻狂 不...
    商南萧阅读 170评论 0 2