接口测试工具:postman的使用

postman简介

一般简单的接口测试我们可以直接在浏览器里面进行测试,但是涉及到一些权限设置的就无法操作了,因此我们需要接口测试的相关工具;postman是一个接口测试和http请求的工具。
官方网址:https://www.getpostman.com
postman的优点:

  • 支持各种的请求类型:get、get、put、patch、delete等
  • 支持在线存储数据,通过账号就可以进行迁移数据。
  • 很方便的支持请求header和请求参数的设置。
  • 支持不同的认证机制,包括Basic Auth,Digest Auth,OAuth 1.0,OAuth 2.0等
  • 响应数据是自动按照语法格式高亮的,包括HTML,JSON和XML。

下载安装:

postman有Windows,mac、linux、以及chrome插件版本。这里主要介绍win平台版本的使用。

新建请求界面介绍:

在这里插入图片描述

接口授权设置:

在这里插入图片描述
很多时候,出于安全考虑我们的接口并不希望对外公开。这个时候就需要使用授权机制授权过程验证您是否具有访问服务器所需数据的权限。当您发送请求时,您通常必须包含参数,以确保请求具有访问和返回所需数据的权限。postman提供授权类型,可以轻松授权类型,可以轻松地在postman本地应用程序中处理身份验证协议。
如果不填写,会出现401报错,即未授权。
Basic auth
基本身份验证是一种比较简单的授权类型,需要经过经验的用户名和密码才能访问资源,这就需要我们输入用户名和对应的密码。

Digest Auth
Digest Auth是一个简单的认证机制,最初是位HTTP协议开发的,因此也常叫HTTP摘要。其身份验证机制非常简单,它采用哈希加密方法,以避免用明文传输用户口令,摘要认证就是要核实参与通信双方都指导双方的一个口令。
Hawk Auth
Hawk Auth是一个HTTP认证方案,使用MAC(Message Authentication Code,消息认证码算法)算法,它提供了对请求进行部分加密验证的认证HTTP请求的方法。hawk方案要求提供一个共享对称密钥在服务器与客户端之间,通常这个贡献的凭证在初始TLS(安全传输协议)保护阶段建立的,或者是从客户端和服务器都可用的其他一些共享机密信息中获取的。
OAuth 1.0
OAuth (开放授权)是一个开发标准,允许用户让第三方应用访问该用户在某一网站上储存的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。

cookies设置

在这里插入图片描述

环境变量:

环境变量指在不同环境,同一个变量值随着环境不同而发生变化,当在测试环境时,host值为:dev.postman.com,当切换到生产环境时,host值变为:postman-echo.com。
添加:
在这里插入图片描述
在这里插入图片描述
切换环境(即当前引用的值):
在这里插入图片描述
引用环境变量:{{变量名}}
在这里插入图片描述

本地变量:

本地变量主要是针对单个URL请求设置的变量,作用域只局限在请求范围内。如请求URL如下,设置两个本地变量(user,passwd)作为参数。请求方式为post。
创建变量:
在这里插入图片描述
引用变量:
在这里插入图片描述

全局变量:

全局变量是指在所有的环境里面,变量值都是一样的,全局变量的作用域是所有请求。
全局变量设置有两种方式:

  • 点击界面里设置
  • 在脚本里设置
    界面设置
    点击眼睛图标后的管理环境,在Global选项菜单点击Edit菜单即可设置全局变量,如下图所示。全局变量的引用格式和环境变量一样,
    注意:当环境变量和全局变量名称一样时,切换到某个环境时,环境变量会覆盖全局变量。
    新建全局变量:
    在这里插入图片描述
    在这里插入图片描述
    引用全局变量:
    {{all}}

数据变量:

数据变量是通过导入外部数据文件(json文件或者csv文件),来获取变量数据,我们可以创建一个如下内容的json文件:
data.json

[{
“username”:“jack”,
“password”:“6666”
},{
“username”:“jack2”,
“password”:“6666”
}]

postman断言:

一般来说执行完测试,我们需要对测试结果来进行校验,判断结果是否符合我们的预期,也就是断言,在接口测试中一般会根据响应状态码或者响应返回的数据进行断言。
postman提供一个测试沙箱(postman sandbox)测试沙箱是一个JavaScript执行环境,可以通过js脚本来编写pro-request script和test script。

  • pre-request script(预置脚本)可以用来修改一些默认参数,在请求发送之前执行。有点类似于unittest里面的setUp()方法。
  • test script(测试脚本)当接收到响应之后,再执行测试脚本。
    在这里插入图片描述

运行Collection (批量执行):

当我们想批量执行某个集合里面的各个APi时,可以使用Collection Runner来批量运行API,同时可以进行环境变量,迭代执行次数,延迟时间等设置。
在这里插入图片描述
在这里插入图片描述

数据驱动:

应用背景:有时我们针对一个接口需要测试很多不同的参数,如果每次一个个的去修改参数值来进行测试,这样效率肯定会比较低下,因此我们需要每次迭代执行传入不同的参数进行测试,那么需要导入外部数据文件进行参数化,也就是所谓的数据驱动。
数据导入
先创建一个json数据文件:data.json,文件类型选择application/json,内容如下:
在这里插入图片描述
引入文件
在这里插入图片描述
引用文件中的值
直接在要引用的地方填写{{username}}、{{passwd}}就可以了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值