接口测试|HttpRunner接口关联与常用断言

简介: 接口测试|HttpRunner接口关联与常用断言

HttpRunner接口关联与常用断言

接口关联

日常工作中,我们在请求很多接口的时候需要先登录获取cookie或者token,作为后续请求其他接口的凭证,这需要我们将接口关联起来。

以企业微信为例,我们调用服务端API时,需要先提供access_token。

在这里插入图片描述

第一个test接口获取token,并提取出存储到变量中,在第二个test接口中直接调用该变量,如下:

# 接口关联
- config:
    name: 微信接口
    base_url: https://api.weixin.qq.com

- test:
    name: 获取token
    request:
      url: /cgi-bin/token
      method: GET
      params:
        grant_type: client_credential
        appid: wxf14419077f707856
        secret: 92a113bd4b5ffdc72144740dc7123c99
    extract:
      - token: content.access_token
      - time: content.expires_in
    validate:
      - eq: [$time,7200]


- test:
    name: 获取用户所有标签
    request:
      url: /cgi-bin/tags/get
      method: GET
      params:
        access_token: $token  # 引用上面的token实现关联
    extract:
      - id: content.tags.0.id
      - name: content.tags.0.name
    validate:
      - eq: [$id,2]
      - eq: [$name,"星标组"]

这样我们就实现了接口的关联。

常用断言

validate: 断言设置 可以对响应数据做多个断言验证

注:断言操作一般都用在testcases用例层做业务断言,api层只是做简单的断言

格式为:

 validate:
      - eq: [status_code,200]

相关常用断言

  • eq、equals、==、is,判断实际结果和期望结果是否相等
  • lt、less_than,判断实际结果小于期望结果
  • le、less_than_or_equals,判断实际结果小于等于期望结果
  • gt、greater_than,判断实际结果大于期望结果
  • ge、greater_than_or_equals,判断实际结果大于等于期望结果
  • ne、not_equals, 判断实际结果和期望结果不相等
  • str_eq、string_equals 判断转字符串后对比实际结果和期望结果是否相等
  • len_eq、length_equals、count_eq 判断字符串或list长度
  • len_gt、length_greater_than、count_gt、count_greater_than 判断实际结果的长度大于和期望结果
  • len_ge、length_greater_than_or_equals、count_ge、count_greater_than_or_equals实际结果的长度大于等于期望结果
  • len_lt、length_less_than、count_lt、count_less_than实际结果的长度小于期望结果
  • len_le、length_less_than_or_equals、count_le count_less_than_or_equals实际结果的长度小于等于期望结果

注: 断言一般用在测试步骤层里面,如下

# 断言
- config:
    name: 测试百度网站
    base_url: https://www.baidu.com

- test:
    name: 接口名称 百度接口
    request:
      url: /
      method: GET
    validate:
      - eq: [status_code,200]  # 判断相等的4种写法 [实际结果,预期结果]
      - is: [status_code,200]
      - ==: [status_code,200]
      - equals: [status_code,200]

注:在yaml文件中,断言引用函数需要加引号 " ",如下图

在这里插入图片描述

相关文章
|
2月前
|
测试技术
接口测试测试用例编写注意事项
接口测试测试用例编写注意事项
|
2月前
|
测试技术 数据库
接口测试断言
接口测试断言
18 0
|
8月前
|
JSON 算法 JavaScript
《协议测试》没有接口文档,要怎么写接口测试用例?
《协议测试》没有接口文档,要怎么写接口测试用例?
|
10月前
|
测试技术 数据处理 数据安全/隐私保护
接口自动化测试中一些复杂请求的处理方式
接口自动化用例编写中,遇到复杂的请求数据,该如何处理?
|
10月前
|
测试技术 API 网络架构
如何使用Postman Runner实现自动化测试中的参数自增
Postman Runner 是 Postman 工具中的一个强大功能,它可以用来批量运行 API 测试脚本。通过设置不同的参数组合,我们可以轻松地测试 API 的各种不同情况,并生成测试报告和测试结果。
如何使用Postman Runner实现自动化测试中的参数自增
|
10月前
|
存储 JSON 数据格式
postman如何做接口关联
postman如何做接口关联
171 0
|
10月前
|
Arthas JSON 前端开发
在接口自动化测试过程中,如何开展接口自动化测试?单个模块和多个模块关联又怎么去做测试?
在接口自动化测试过程中,如何开展接口自动化测试?单个模块和多个模块关联又怎么去做测试?
216 2
|
11月前
|
网络安全 Windows
基于fastapi实现6个接口(token拦截, 2个业务流程,接口参数依赖校验)已经通过postman测试,记录部署服务器和windows,用于pytest接口自动化框架的接口测试对象
基于fastapi实现6个接口(token拦截, 2个业务流程,接口参数依赖校验)已经通过postman测试,记录部署服务器和windows,用于pytest接口自动化框架的接口测试对象
|
存储 JSON 数据格式
Postman常用断言功能解析
在Postman中断言也属于比较重要的一块内容,因为关系到如何准确的判断我们测试的接口是否达到我们的期许和要求,断言脚本语言除了系统自带的一部分外还有很多可以灵活自己编写的,在不断的学习中还会不断的总结,本文就是主要介绍Postman常用断言功能解析。
151 0
Postman常用断言功能解析
|
存储 测试技术 API
接口测试|HttpRunner接口关联与常用断言
接口测试|HttpRunner接口关联与常用断言
119 0
接口测试|HttpRunner接口关联与常用断言