HttpRunner学习总结—取值与变量

例如我们存在一个这样的接口,返回内容是 json格式

这种键值对存在的格式就很简单,直接取值就可

多层取值也是json取值格式,list取值就是下表:content.0

字典就是key:content.keyname

但注意一点是,如果返回的是unicode编码,断言时直接写中文即可

上面我们说的是取值,以下要说变量

在httprunner上,我们要声明变量,关键字是variabls

name: 测试登录
variables:  #注意这里
    username: 11
    password: 111!
request:
    data:
        deviceId: '111'
        grant_type: password_code
        password: $password #注意这里即可
        username: $username
        validCode: '11'
    headers:
        Authorization: Basic d2ViQXBwOnNodWhhaUAxMjM=
        Content-Type: application/x-www-form-urlencoded
        User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
            (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36
    method: POST
    url: http://192.168.xxxx.xxx:9900/api-xx/xxx/token
validate:
-   eq:
    - status_code
    - 200  
-   eq:
    - headers.Content-Type
    - application/json
-   eq:
    - content.code
    - 0
-   len_eq:
    - content.0.access_token
    - 36

运行即可看到调用的是定义的变量

而我们测试中,通常会有多个环境,此时需要配置不痛的环境

name: 测试登录
base_url: http://192.1xx.xx.xxx:9900
variables:
    username: xx
    password: xxx!
request:
    data:
        deviceId: 'xx'
        grant_type: password_code
        password: $password
        username: $username
        validCode: '11'
    headers:
        Authorization: Basic d2ViQXBwOnNodWhhaUAxMjM=
        Content-Type: application/x-www-form-urlencoded
        User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
            (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36
    method: POST
    url: /api-uaa/oauth/token
validate:
-   eq: [status_code,200]
-   eq: [headers.Content-Type,application/json]   
-   eq: [content.code,0]
-   len_eq: [content.data.access_token,36]

 调用执行即可

一个总结:

参数 如果是json 则用json +键值对

参数 如果是data 则用data+键值对

如果是get请求,参数形式为params+键值对

request:
    data:
        password: $password
        username: $username


request:
    json:
        password: $password
        username: $username


request:
    params:
        password: $password
        username: $username

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值