每天进步一点点,关注我们哦,每天分享测试技术文章
本文章出自【码同学软件测试】
码同学公众号:自动化软件测试
码同学抖音号:小码哥聊软件测试
接口自动化测试中通常都有鉴权机制,就是判断是否在登录状态下,已登录方可调用接口,未登录则不可调用。本文将带领大家学习使用rest-assured框架实现基于cookies和token的鉴权关联,实现接口自动化测试。
1
基于cookies的鉴权关联
1. 业务接口熟悉
码同学全栈接口项目中有基于cookies的查询余额接口,必须先调用登录接口获取cookie并传递给查询余额接口,两个接口的信息如下
![](https://img.haomeiwen.com/i18223020/a80945e5b7a0d96f.png)
2. 通过抓包查看cookies
在页面上登录银行系统,通过Chrome开发者工具抓包,可以看到登录成功以后接口返回中产生了cookie信息
![](https://img.haomeiwen.com/i18223020/4c0cd98f699ad081.png)
3. 使用rest-assured框架实现cookie关联
首先,使用脚本调用登录接口,并从返回信息中获取cookie,代码如下,该方法执行完成后会将登录后的cookies存储在代码中的cookies对象中
![](https://img.haomeiwen.com/i18223020/60adf9fc3f54937a.png)
其次,调用查询余额接口,并在请求信息中添加cookies对象,这样做就可以让查询余额接口在请求时带上有效cookies,代码如下
![](https://img.haomeiwen.com/i18223020/0dc230f5481f280d.png)
2
免费领取码同学软件测试课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章+ 私信「码同学666」获取资料哦
基于token的鉴权关联
1. 业务接口熟悉
码同学全栈接口项目中有基于token的查询余额接口,必须先调用登录接口获取token并传递给查询余额接口,两个接口的信息如下
![](https://img.haomeiwen.com/i18223020/e89fee875b4055a9.png)
2. 抓包分析token的产生和传递
在页面上登录银行系统,通过fiddler工具抓包,可以看到登录成功以后接口返回中产生的data信息就是token的值
![](https://img.haomeiwen.com/i18223020/f96435b8f0dcd0a3.png)
那我们再分析下查询余额的接口在发起时token信息是如何传递的,依然是fidder工具抓包,我们可以发现在请求的header中有一个字段叫做testfan-token,对应的值就是登录接口返回的token值
![](https://img.haomeiwen.com/i18223020/6971b59b2c07ab1e.png)
3. 使用rest-assured框架实现token关联
首先,使用脚本调用登录接口,并从返回信息中获取token,代码如下,该方法执行完成后会将登录后的token值存储在代码中的token变量中
![](https://img.haomeiwen.com/i18223020/438d3ed56ad8ff4b.png)
其次,调用查询余额接口,并在请求信息中增加header信息,这样做就可以让查询余额接口在请求时带上有效token,代码如下
![](https://img.haomeiwen.com/i18223020/731da51c0f4f5cb3.png)
好了,不管是cookies还是token,我们都已经有了在rest-assured框架的关联使用,赶紧去试试吧
免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可以关注我们公众号哦:自动化软件测试
本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
网友评论