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


    本文章出自【码同学软件测试】

    码同学公众号:自动化软件测试,领取资料可加:Matongxue_8

    码同学抖音号:小码哥聊软件测试

     

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

    1   基于cookies的鉴权关联

    1. 业务接口熟悉

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

    2. 通过抓包查看cookies

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

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

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

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

    2   基于token的鉴权关联

    1. 业务接口熟悉

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

    免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可加:Matongxue_8/关注码同学公众号

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

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

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

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

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

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

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

     

    END

    免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可加:Matongxue_8/关注码同学公众号

    本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

  • 相关阅读:
    ps4 如何导出切片 单个图片
    测试webservice的时候,如果出现这个错误:"The test form is only available for requests from the local machine"
    js jquery 按钮点击后 60秒之后才能点击 60秒倒计时
    有空研究一下 superwebsocket (底层是 supersocket) 用来实现 web聊天什么的
    Vue学习笔记一:初识Vue
    被爬虫了,嘻嘻嘻
    Mybatis-generator自动生成器
    SpringCloud笔记五:Feign
    SpringCloud笔记四:Ribbon
    SpringCloud笔记三:Eureka服务注册与发现
  • 原文地址:https://www.cnblogs.com/testfan2019/p/15845493.html
Copyright © 2020-2023  润新知