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是一个非常不错的接口测试工具,不管是对于测试,还是后台开发以及前端开发。

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

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

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

相关推荐
夏鹏今天学习了吗7 小时前
【LeetCode热题100(82/100)】单词拆分
算法·leetcode·职场和发展
2501_901147838 小时前
动态规划在整除子集问题中的应用与高性能实现分析
算法·职场和发展·动态规划
CCPC不拿奖不改名8 小时前
SQL基础(SQL小白教程):MySQL语句+环境一键搭建+面试习题
数据库·sql·计算机网络·mysql·oracle·面试·职场和发展
非凡ghost9 小时前
Wireshark中文版(网络抓包工具)
网络·windows·学习·测试工具·wireshark·软件需求
夏鹏今天学习了吗13 小时前
【LeetCode热题100(81/100)】零钱兑换
算法·leetcode·职场和发展
清 澜14 小时前
大模型扫盲式面试知识复习 (二)
人工智能·面试·职场和发展·大模型
海天一色y15 小时前
python---力扣数学部分
算法·leetcode·职场和发展
郝学胜-神的一滴16 小时前
Python数据封装与私有属性:保护你的数据安全
linux·服务器·开发语言·python·程序人生
qq 137401861116 小时前
解读ASTM D7386标准:守护物流环节astmd7386的包装安全底线
功能测试·可用性测试·安全性测试
源代码•宸17 小时前
Golang原理剖析(map面试与分析)
开发语言·后端·算法·面试·职场和发展·golang·map