实验简介

Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。它能提供功能强大的 Web API 和 HTTP 请求的调试,它能够发送任何类型的HTTP 请求 (GET, POST, PUT, DELETE…),并且能附带任何数量的参数和 Headers。不仅如此,它还提供测试数据和环境配置数据的导入导出,付费的 Post Cloud 用户还能够创建自己的 Team Library 用来团队协作式的测试,并能够将自己的测试收藏夹和用例数据分享给团队。甚至,它还能与Jenkins进行持续集成。它如此强大,完全刷新了我对插件类工具的认知

实验目的

1. 使用Postman发送get, post请求

2. 对请求的内容实现参数化

2. 创建测试集Collections和模块化Folder,进行测试用例的管理

实验流程

1. 首先是安装Postman, 这是一个Chrome插件,请网上自行下载安装。

  如果插件无法安装的话, 可以使用绿色版的Postman,下载地址如下: https://pan.baidu.com/s/12tkkk6sVETKgGfGp2_Mb3A

2. 发送Get请求, 输入URL:

  

  点击Params,输入参数及value,可输入多个,即时显示在URL链接上,所以,GET请求的请求头与请求参数如在接口文档中无特别声明时,可以不填。

  点击 Send, 发送请求,Postman下半部分为响应相关信息。

  

  此处需注意的是区别HTTP状态码与响应正文中的状态码,只有HTTP状态码是200时,才代表这个接口请求是正确的,这个是HTTP协议定义的,而响应正文的状态码,是程序员自已定义的,可以是200,也可以定义为其它值,是为了让接口使用者去区分正常数据与异常数据。

  下面这个案例的状态码和响应码就不相同。

  

3. 发送Post请求

  输入URL,编辑正文信息

  对于Post请求,Postman给我们提供了很格式,大家可以根据需要来选择。

  

  以下为部分常用的Content-Type解释:

  

  当选择相应参数方式后,postman自动的帮我们设置了Headers里的Content-Type,因此不需要我们人工干预,这就是使用一款流行工具的好处,把一些基础点都帮我们处理了。

4. 一个完整的接口测试,应该包括:请求->获取响应正文->断言,我们已经知道了请求与获取响应正文,下面来介绍如何用postman进行断言。

  在Tests里,Postman给我们提供了很多方法

  举例说明:

    首先设置一个断言场景,根据断言场景来举例说明Postman断言如何使用。

    1、判断HTTP返回状态码为200

    2、判断响应正文中是否包含:"statusCode":200

    3、解析响应正文,并判断statusCode的值是200,响应内容”successful”

  

  如果响应是JSON的话,我们需要用到方法“Response body:JSON value check”。

  我们先来看一下请求的响应,对如下接口,我们的验证点可以是好几个:"message": "success", "limit": 100

  

  我们可以看出,检查点的方法里面其实是JS代码,jsonData变量其实是解析完JSON后的对象,在JS中,一个JSON对象获取其属性的值,直接是用jsonData.value.

  重点关注一下,如果验证点是嵌套在JSON对象里面,需要再取一次值,如下图:

  

  添加验证点之后,测试一下, 点击Send, 发送请求, 在响应区看一下测试结果,如下图,断言全部通过。

  

  以上,SNIPPETS中还有很多的方法提供给我们, 努力学习吧~~~

Postman系列之发送请求(一)的更多相关文章

  1. 在Postman脚本中发送请求(pm.sendRequest)

    Postman的Collection(集合)/Folder(集合的子文件夹)/Request(请求)都有Pre-request script和Tests两个脚本区域, 分别可以在发送请求前和请求后使用 ...

  2. Postman集合/文件夹/请求中脚本的执行顺序

    Postman的Collection(集合)/Folder(集合的子文件夹)/Request(请求)中都有Pre-request Script(请求前脚本)和Tests(请求后脚本) 这个功能类似于不 ...

  3. Postman使用手册1——导入导出和发送请求查看响应

    导读: 现在的web和移动开发,常常会调用服务器提供restful接口进行数据请求,为了调试,一般会先用工具进行测试,通过测试后才开始在开发中使用.这里介绍一下如何在chrome浏览器利用postma ...

  4. Postman模拟Request Payload发送请求

    Postman模拟Request Payload发送请求,如下图所示:

  5. PostMan 使用Interceptor 发送带cookie的请求一直loading

    问题 最近要写一个爬虫(虽然是第一次写),于是就用了Chrome上非常方便一个插件,PostMan,但是由于chrome安全的限制,发不出带cookie和带有自定义头部标签的请求. 百度一番后得如果想 ...

  6. postman使用--发送请求

    概述 上节讲了下接口的基础,从现在来学习怎么测接口.当然,测试接口有很多的工具,比如postman,jmeter等等,或者用代码测试,如果是做接口自动化我当然会选python,如果是调试接口,我特别喜 ...

  7. Java生成二进制文件与Postman以二进制流的形式发送请求

    业务描述: 模拟终端(智能家居)发送HTTP POST请求,请求参数为二进制流:而且,二进制流是加密后的数据,因此调试分两步: 1.Java代码生成加密后数据,并保存为二进制流文件 (电脑上的图片就是 ...

  8. Postman系列四:Postman接口请求设置环境变量和全局变量、测试沙箱和测试断言、测试集运行与导入数据文件

    一:Postman中接口请求设置环境变量和全局变量 全局变量和环境变量可以通过Pre-request Script和Tests设置,会在下面测试沙箱和测试断言中讲到. 全局变量的设置:官网参考http ...

  9. Postman系列三:Postman中post接口实战(上传文件、json请求)

    一:接口测试过程中GET请求与POST请求的主要区别 从开发角度我们看get与post的主要区别是:1.Get是用来从服务器上获得数据,而Post是用来向服务器上传递数据:2.Get安全性比Post低 ...

随机推荐

  1. DA_04_解决Xshell中文乱码问题

    一:解决Xshell中文乱码问题      二:解决克隆后eth0不见的问题 2.1:虚拟机克隆步骤:          1.直接修改  /etc/sysconfig/network-script/i ...

  2. linux基础—课堂随笔07_磁盘存储和文件系统

    磁盘管理 管理分区 列出块设备  lsblk parted命令 高级分区操作 用法:  parted [选项]... [设备 [命令 [参数]...]...]  parted /dev/sdb mkl ...

  3. elk快速入门-在kibana中如何使用devtools操作elasticsearch

    在kibana中如何使用devtools操作elasticsearch:前言: 首先需要安装elasticsearch,kibana ,下载地址 https://www.elastic.co/cn/d ...

  4. [CEOI1999]Sightseeing trip(Floyed)

    [CEOI1999]Sightseeing trip Description There is a travel agency in Adelton town on Zanzibar island. ...

  5. POJ 2142 - The Balance [ 扩展欧几里得 ]

    题意: 给定 a b n找到满足ax+by=n 的x,y 令|x|+|y|最小(等时令a|x|+b|y|最小) 分析: 算法一定是扩展欧几里得. 最小的时候一定是 x 是最小正值 或者 y 是最小正值 ...

  6. mysql 导出导入数据库(Mysqldump)备份

    使用mysql不熟练啊!!! mysqldump导出数据库,必须以cmd命令行的形式,在Navicat中以新建查询形式使用Mysqldump不好使的.(本来使用Navicat转储SQL,再导入SQL, ...

  7. 小程序开发之后台mybatis逆向工程(二)

    上一节搭建好了SSM后台框架,这一节将根据表结构创建实体及映射文件以及mapper接口.如果表过多,会很麻烦,所以mybatis提供了逆向工程来解决这个问题. 上一节 SSM搭建后台管理系统 逆向工程 ...

  8. eclipse打开项目中文件时左侧project explorer同时展开该文件的路径

    如图,点击Package Explorer面板上的双向箭头图标即可

  9. 简单消息监听容器--SimpleMessageListenerContainer

    这个类非常强大,我们可以对他做很多设置,对于消费者的配置项,这个类都可以满足监听队列(多个队列).自动启动.自动声明功能可以设置事务特性.事务管理器.事务属性.事务容量(并发).是否开启事务.回滚消息 ...

  10. HDU 5791 Two ——(LCS变形)

    感觉就是最长公共子序列的一个变形(虽然我也没做过LCS啦= =). 转移方程见代码吧.这里有一个要说的地方,如果a[i] == a[j]的时候,为什么不需要像不等于的时候那样减去一个dp[i-1][j ...