postman登录鉴权之接口测试

一.背景

在做接口测试的时候,有些接口向后台请求数据的时候,是需要用户在登录情况下才有数据返回。 以电商平台为例,用户的个人中心,用户的订单列表,用户的支付信息等等,所有用户维度的数据都是需要登录态。 本文主要是探索接口测试过程中需要登录鉴权的情况。

二.接口测试

举个例子,现在有个获取订单列表的接口,需要用户登录下才能获取到数据。 针对这种接口的测试步骤基本可以分为:抓包->postman构造请求->完成测试。

1.抓包

使用任意的抓包工具,或者简单粗暴直接浏览器F12打开调试工具抓包。

  • 示例一:使用Charles抓包
    找到Contents下面的Headers,可以看到请求的格式(GET),接口的域名和路径和请求参数等,以及我们需要用到的cookie信息。这些都是https请求的Headers信息。


    切换到cookie,可以看到cookie里面有很多key和key对应的内容。有兴趣的可以去研究一下。

  • 示例二:使用浏览器F12抓包
    方法大同小异,也是查看请求的headers信息,找到cookie。

2.postman构造请求

打开postman

新建一个GET请求,输入请求URL

构造请求的Headers,按照抓包的Headers照搬过来就好

增加cookie,把抓包cookie一大段全部复制粘贴过来

万事俱备,只欠东风。点击send即可

看到http请求状态码为200,并且后台接口的返回值成功,说明OK了。

3.其他的登录鉴权方式

当然,除了上面构造请求headers的方式,postman还提供了其他的登录鉴权方式。

大家看下面的列表:

postman构造请求的时候,还有一个Authorization的模块可以选择,可以看到type中有12中鉴权方式可以选择。

看看官方文档:learning.postman.com/docs/postma...

举个最常用的例子吧:

  • Basic auth:基本认证
    基本身份验证涉及随请求一起发送经过验证的用户名和密码。在请求授权选项卡中,从类型下拉列表中选择基本身份验证。


    在" 用户名"和" 密码"字段中输入您的API登录详细信息-为了提高安全性,您可以将其存储在变量中。
    在请求标头中,您将看到Authorization标头将向API传递一个代表您的用户名和密码值的Base64编码的字符串,该字符串附加到文本" Basic"中,如下所示: 其他的登录鉴权方式大家可以去看看postman的官方文档,这里就不再赘余了。

三.总结

postman是一个非常不错的接口测试工具,不管是对于测试,还是后台开发以及前端开发。

图形化,模块化,可配置化,使用起来也很直观和方便。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
玩具猴_wjh8 分钟前
面试问题相关回答
面试·职场和发展
测试人社区-小明12 分钟前
未来测试岗位的AI需求分析
人工智能·opencv·测试工具·算法·金融·机器人·需求分析
SiYuanFeng14 分钟前
新手leetcode快速刷题指南
算法·leetcode·职场和发展
慧都小项18 分钟前
Parasoft Jtest集成Gradle教程:提速静态分析流程
java·测试工具
yaoh.wang1 小时前
力扣(LeetCode) 9: 回文数 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
yuhaiqun19891 小时前
新手练 C++ HTTP 服务实操:从 “拆请求头” 到 “发 HTML 响应”
c语言·c++·程序人生·http·html·学习方法·改行学it
小年糕是糕手1 小时前
【C/C++刷题集】类和对象算法题(一)
数据结构·c++·程序人生·考研·算法·leetcode·改行学it
测试人社区-千羽1 小时前
语义分析驱动的测试用例生成:提升软件测试效率的新范式
运维·人工智能·opencv·面试·职场和发展·自动化·测试用例
56347179412 小时前
四旋翼无人机PID控制仿真模型探索
功能测试
ywwwwwwv2 小时前
力扣300
算法·leetcode·职场和发展