D04_用例中提取数据:delimiter 界定符方式

D04_用例中提取数据:delimiter 界定符方式

在 httprunner 中可以通过界定符的连接方式提取指定的内容。界定符起到了连接的作用,类似路径的表达方式,一般作用域逐渐降低,如: 中国.北京.海淀.西二旗。

无论JSON格式还是HTML文件,都有类似的嵌套结构存在,这就为界定符提供了用武之地。

\httprunner-2.5.5\httprunner\response.py

在源码函数的注释中说明,通过界定符方式提取时,可以从响应实体 JSON 或者 HTML 文本中提取

案例: 获取某登录页面验证码图片功能

  1. 特点:其返还的响应实体为 JSON 类型
  2. 目的:
  • 获取响应实体 JSON 中的 code 编码
  • 获取响应实体 JSON 中的 authCodeToken 值
  • 验证响应实体 JSON 中 data 项中又包括两个对象“authCodeToken ”和“image”

编写测试用例如下:

- config:
    name: 用例:登录

- test:
    name: 步骤:获取验证码图片
    request:
      url: http://47.105.124.232:8091/api/common/getCaptcha
      method: POST
      headers:
        domain: nz.1000phone.com
        Content-Length: '0'

    extract:
      # 以界定符(.)的方式逐级向下提取目标文本  
      - p_code: content.code
      - p_token: content.data.authCodeToken
      - p_data: content.data
    
    validate:
      # 验证提取的文本是否符合预期  
      - eq: [$p_code, '200']
      - len_eq: [$p_token, 36]
      - len_eq: [$p_data, 2]
      

执行用例,查看测试报告,提取文本和预期一致。

发布了30 篇原创文章 · 获赞 0 · 访问量 229

猜你喜欢

转载自blog.csdn.net/weixin_42007999/article/details/105718351