HttpRunner-提取extract的基础介绍

前言

   在进行接口测试的过程中,需要提取响应数据的指定参数值来做断言,或者作为下一个接口的入参,此时需要用到“提取”的功能,类似于jmeter的提取器的功能,对应在HttpRunner里面提取对象的关键字是extract

提取数据,分为两种:

  • 提取response-body
  • 提取response-headers

一、提取响应数据

如果接口返回的是一个json数据类型,可以用content来获取对应参数的values

content取值的方式有两种:

  1. content.key
  2. content.int
  3. 通过正则表达式提取

content.key

将response转化成python的dic类型数据

content.msg 取出msg后面的对应值“操作成功!”

content.data.redirectUrl取出redirectUrl后面重定向的网址

脚本t

extract:
   - msg: content.msg
   - msg: content.data.redirectUrl

content.int

将response转化成python的list类型数据

content.0  代表获取第一个list数据

content.1. cancelLimitation  代表获取第2个list内的cancelLimitation 对应的value值

正则表达式提取

想要提取响应结果的部分字符串数据时,就不能通过content来提取,这时可以通过正则表达式来匹配获取。

脚本

extract:
   - token: token=(.*?)" 

二、提取信息头/cookie数据

在 HTTP 响应中,通过响应头设置 cookies 记录用户信息以及身份凭证。用 HttpRunner 编写测试用例的时候,模拟用户身份就需要从中提取 cookies 信息。

实现 cookies 提取有多种方式,如:

    通过 cookies 关键字提取全部 cookies;

    通过 cookies.xxxxx 获取某个名称的 cookie 值

    通过 headers.Set-Cookie 提取全部 cookies;

通过 headers.Set-Cookie.xxxxx 获取某个名称的 cookie 值;

获取headers指定数据,语法:

#提取器
    extract:
       - msg: content.description
       - Token: headers.Set-Cookie  #获取response-headers的set-cookie的全部值
       - num: headers.Content-Type  #获取response-headers的Content-Type值
       - cok: cookies.MMC_TOKEN     #获取response-headers的set-cookie的MMC_TOKEN的值

使用获取到的cookie值,通过“$参数名”进行引用

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Miss糖豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值