接口测试框架中的鉴权处理!

接口自动化测试中通常都有鉴权机制,就是判断是否在登录状态下,已登录方可调用接口,未登录则不可调用。本文将带领大家学习使用rest-assured框架实现基于cookies和token的鉴权关联,实现接口自动化测试。

1、基于cookies的鉴权关联

1. 业务接口熟悉

码同学全栈接口项目中有基于cookies的查询余额接口,必须先调用登录接口获取cookie并传递给查询余额接口,两个接口的信息如下

2. 通过抓包查看cookies

在页面上登录银行系统,通过Chrome开发者工具抓包,可以看到登录成功以后接口返回中产生了cookie信息

接口测试框架中的鉴权处理!_第1张图片

3. 使用rest-assured框架实现cookie关联

首先,使用脚本调用登录接口,并从返回信息中获取cookie,代码如下,该方法执行完成后会将登录后的cookies存储在代码中的cookies对象中

接口测试框架中的鉴权处理!_第2张图片

其次,调用查询余额接口,并在请求信息中添加cookies对象,这样做就可以让查询余额接口在请求时带上有效cookies,代码如下

接口测试框架中的鉴权处理!_第3张图片

2、基于token的鉴权关联

1. 业务接口熟悉

码同学全栈接口项目中有基于token的查询余额接口,必须先调用登录接口获取token并传递给查询余额接口,两个接口的信息如下

2. 抓包分析token的产生和传递

在页面上登录银行系统,通过fiddler工具抓包,可以看到登录成功以后接口返回中产生的data信息就是token的值

那我们再分析下查询余额的接口在发起时token信息是如何传递的,依然是fidder工具抓包,我们可以发现在请求的header中有一个字段叫做testfan-token,对应的值就是登录接口返回的token值

接口测试框架中的鉴权处理!_第4张图片

3. 使用rest-assured框架实现token关联

首先,使用脚本调用登录接口,并从返回信息中获取token,代码如下,该方法执行完成后会将登录后的token值存储在代码中的token变量中

接口测试框架中的鉴权处理!_第5张图片

其次,调用查询余额接口,并在请求信息中增加header信息,这样做就可以让查询余额接口在请求时带上有效token,代码如下

接口测试框架中的鉴权处理!_第6张图片

好了,不管是cookies还是token,我们都已经有了在rest-assured框架的关联使用,赶紧去试试吧

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

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

你可能感兴趣的:(软件测试工程师,软件测试,自动化测试,前端,服务器,github,软件测试,功能测试,自动化,程序人生)