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

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

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

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

相关推荐
qq_161111271 小时前
Jenkins+Python自动化测试持续集成详细教程
自动化测试·python·jenkins·教程·持续集成
随风而飘1868 小时前
KEITHLEY吉时利 2400 数字源表
人工智能·功能测试·科技·测试工具
官乐13 小时前
AI面试指南(多agent开发流程)
人工智能·面试·职场和发展
程序员三藏13 小时前
自动化测试用例编写详解
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
跟我一起学测试呀13 小时前
软件测试面试总结,备战金九银十
面试·职场和发展
Nil20814 小时前
leetcode 98验证二叉搜索树
算法·leetcode·职场和发展
纪念 22914 小时前
个人学习心得
程序人生·学习方法
测试老哥16 小时前
Pytest自动化测试框架tep环境变量、fixtures、用例三者之间的关系
自动化测试·软件测试·python·测试工具·测试用例·pytest·职场发展
qq_5137280418 小时前
Selenium 显式等待
selenium·测试工具