httprunner中使用JMESPath进行数据提取技巧

2023-05-16

在使用httprunner时, 其进行数据提取是使用JMESPath进行的, httprunner示例中的提取未涉及一些稍复杂的提取, 所以专门学习了一下JMESPath的使用, 做个总结, JMESPath 官方文档路径:https://jmespath.org/specification.html#functions

本人要提取的数据是一个list, 然后成员是字典, 结构是:

[
  {
    "name": "晚班",
    "createdBy": "admin",
    "createdTime": 1656500919000,
    "endTime": "06:00",
    "id": "c409587b32b04301bdee69312aa5743f",
    "revision": 0,
    "startTime": "21:00"
  },
  ...
  ...
]

下面提取方法:

  1. 提取符合条件name="晚班"的数据, 作为一个列表, 赋值给参数data_list
...
.extract()
.with_jmespath("body.data[?shift=='晚班']", "data_list")
....
  1. 提取符合条件name="晚班"的数据的第一个成员的startTime, 赋值给参数start_time, 注意表达式里面的空格使用
 ...
.extract()
.with_jmespath("body.data[?shift=='晚班'] | [0] .startTime", "start_time")
....
  1. 也可以传将shift在外赋值, 然后传参进表达式进行调用:
shift_name = '晚班'
 ...
.extract()
.with_jmespath("body.data[?shift=='$shift_name'] | [0] .startTime", "start_time")
....

延伸应用:
类似的, 由于httprunner的asset也是用的JMESPath, 故可以应用在assert断言中, 进行期望值判断

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

httprunner中使用JMESPath进行数据提取技巧 的相关文章

  • TOP 命令 使用技巧

    TOP 命令 使用技巧 参数解释 PID xff08 Process ID xff09 xff1a 进程标示号 每个 process 的 ID USER xff1a 进程所有者的用户名 该 process 所属的使用者 PR xff1a 进

随机推荐

  • 搭建树莓派 4B + intel movidius 神经元计算棒2代深度学习环境

    换源 这样下载速度会快一点稳定一点 xff1a 使用管理员权限 xff0c 执行 sudo leafpad etc apt sources list 在打开的文件中 xff0c 用 注释掉原文件内容 xff0c 用以下内容取代 xff1a
  • 虚拟机Ubuntu没有IP地址上不了网

    环境 Ubuntu 22 04VMware Workstation 15 Pro 问题 之前一直可以正常上网 xff0c 今天忽然上不了网了 查看IP地址 xff0c 发现没有IP了 ip addr 1 lo lt LOOPBACK spa
  • Ubuntu 16.04 + Intelrealsense Depth Camera D455 + VINS-Mono配置全记录

    Ubuntu 16 04 43 IntelRealsense Depth Camera D455 43 VINS Mono配置全记录 文章目录 Ubuntu 16 04 43 IntelRealsense Depth Camera D455
  • 接口类(interface),实现类(class),继承(extends),实现(implements)

    接口类 xff1a 64 Service public interface AppCertMsgService public Map lt String Object gt saveCardMsg AppCertMsg appCertMsg
  • 面试经验(互联网,研究所,国企)

    第二篇 xff1a 这篇文章要介绍我在各个领域各种方式的面试经验 xff0c 包括 互联网 研究所 外企 国企 银行 笔试 的面试及笔试 各种面试形式包括 无领导小组面试 群面 xff08 包括英文 xff08 海信 xff09 xff09
  • 使用Github上Eigen库计算自适应信号处理中维纳滤波算法

    LMS算法是自适应信号处理中最常见的算法之一 xff0c Least Mean Square最小均方算法是自适应系统最常见的算法 xff0c 利用Eigen库的线性代数便利计算 xff0c 得到最小均方误差MSE xff0c 程序如下 Th
  • Git 子模块

    2019 March 01 git Git 子模块 0 子模块信息 gitmodules文件用来保存子模块的信息 1 查看子模块 span class nv span git submodule span class c 已检出子模块代码
  • Ubuntu 18.04 安装Clang/LLVM 11

    从 APT 安装 Install the GPG Key for https apt llvm org wget O https apt llvm org llvm snapshot gpg key sudo apt key add Add
  • adb dumpsys

    windows环境下 adb命令 adb shell dumpsys activity findstr 34 mFocusedActivity 34 linux环境下 adb命令 adb shell dumpsys activity gre
  • GPS经纬度的表示方法及换算

    想要认识GPS中的经纬度 xff0c 就必须先了解GPS xff0c 知道经纬度的来源 xff1a 1 GPS系统组成 GPS是 Gloabal Positioning System 的简称 xff0c 意为全球定位系统 xff0c 主要由
  • void指针

    意义 对象的多态性 有一个对象是picture t xff0c 他的某一个成员函数的作用是读入一帧图像并保存成固定的格式 但是 xff0c 图像种类有很多种 xff0c YUV420 YUV422等等 xff0c 或者压缩方式不同 xff0
  • 虚幻引擎VR游戏开发基础教程

    虚幻引擎VR游戏开发基础教程 了解如何使用 Oculus Quest 2 的蓝图在虚幻引擎 4 中从头开始构建基本的 VR 机制 课程英文名 xff1a Unreal Engine VR Development Fundamentals 此
  • 为linux服务器安装windows的图形化界面(华为云服务器)

    背景 Linux云服务器需要安装桌面才方便编程 xff0c 但在实践中 xff0c 有时候用网络上安装Linux桌面的vncserver的教程不成功 xff0c 所以本文教大家为Linux安装 安装驱动 笔者认为 xff0c 安装图形化界面
  • 机器人视觉系统分为哪几种,主要包括哪些关键技术?

    机器人视觉系统是指用计算机来实现人的视觉功能 xff0c 也就是用计算机来实现对客观的三维世界的识别 人类接收的信息70 以上来自视觉 xff0c 人类视觉为人类提供了关于周围环境 最详细可靠的信息 人类视觉所具有的强大功能和完美的信息处理
  • 云计算部署模型和服务模式,云行业入门的第一步

    云计算 大数据 物联网 人工智能 xff0c 可谓是最近几年大热之词 xff0c 热度一浪高过一浪 xff0c 今天主要介绍的是云计算 xff0c 私有云 公有云 混合云 社区云 xff0c 大家都耳熟能详 xff0c 却不知道属于什么 x
  • 对于人工智能的认识,我们需要更深入全面的理解

    20世纪50年代以来 xff0c 计算机科学家们致力于研发与人类智能类似的程序 当这些程序被开发到一定水平后 xff0c 它们就可以在一些特定的应用场景中替代人类 它们被称为人工智能 xff08 AI xff09 和认知计算 20世纪80年
  • 云计算定义共有几种服务模式,部署模型分为几类?

    NIST的云计算定义共有三种服务模式 xff1a 1 软件即服务 xff1a 消费者使用应用程序 xff0c 但并不掌控操作系统 硬件或运作的网络基础架构 是一种服务观念的基础 xff0c 软件服务供应商 xff0c 以租赁的概念提供客户服
  • ARM和STM32的区别及ARM公司架构的发展

    ARM是英国的芯片设计公司 其最成功的莫过于32位嵌入式CPU核 ARM系列 最常用的是ARM7和ARM9 ARM 处理器传统的命名是 ARM 43 数字的方式 xff1a ARM7 ARM9 ARM11 xff0c 在 ARM11 以后
  • httprunner4.x问题: 运行testcase时, 调用的用例会运行两次

    httprunner4 x问题 运行testcase时 调用的用例会运行两次 问题描述 在测试用例脚本A中使用RunTestCase带参数调用其他api脚本B来构建测试用例时 发现每次运行用例都会有两次运行 产生两份运行日志 第一次 运行脚
  • httprunner中使用JMESPath进行数据提取技巧

    在使用httprunner时 其进行数据提取是使用JMESPath进行的 httprunner示例中的提取未涉及一些稍复杂的提取 所以专门学习了一下JMESPath的使用 做个总结 JMESPath 官方文档路径 https jmespat