HttpRunner抓包工具之HttpRunner介绍

news2024/9/27 21:27:06

HttpRunner简介:

  HttpRunner 是一款面向HTTP(S) 协议的通用测试框架,只需编写维护一份YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。

  作者李隆之前是大疆的测试开发工程师,项目起源于大疆内部的测试需求,之后转为开源项目。

HttpRunner运行环境:

1、HttpRunner 是一个基于Python 开发的测试框架,可以运行在macOS、Linux、Windows 系统平台上。

2、Python 版本:HttpRunner 支持Python 3.4 及以上的所有版本,并使用Travis-CI 进行了持续集成测试,测试覆盖的版本包括2.7/3.4/3.5/3.6/3.7。虽然HttpRunner 暂时保留了对Python 2.7 的兼容支持,但强烈建议使用Python 3.4 及以上版本。

3、操作系统:推荐使用macOS/Linux。

HttpRunner设计理念:

  • 充分复用优秀的开源项目,不追求重复造轮子,而是将强大的轮子组装成战车
  • 遵循  约定大于配置  的准则
  • 在框架功能中融入自动化测试最佳工程实践
  • 追求投入产出比,一份投入即可实现多种测试需求

HttpRunner核心特性:

  继承 Requests 的全部特性,轻松实现 HTTP(S) 的各种测试需求;

  采用 YAML/JSON 的形式描述测试场景,保障测试用例描述的统一性和可维护性

  借助辅助函数(debugtalk.py),在测试脚本中轻松实现复杂的动态计算逻辑

  支持完善的测试用例分层机制,充分实现测试用例的复用

  测试前后支持完善的 hook 机制

  响应结果支持丰富的校验机制

  基于HAR 实现接口录制和用例生成功能(har2case)

  结合 Locust 框架,无需额外的工作即可实现分布式性能测试

  执行方式采用 CLI 调用,可与Jenkins 等持续集成工具完美结合

  测试结果统计报告简洁清晰,附带详尽统计信息和日志记录

  极强的可扩展性,轻松实现二次开发和Web 平台化

在HttpRunner 自动化测试项目中,主要存在如下几类文件:

YAML/JSON(必须):测试用例文件,一个文件对应一条测试用例

debugtalk.py(可选):脚本函数,存储项目中逻辑运算函数

该文件存在时,将作为项目根目录定位标记,其所在目录即被视为项目工程的根目录(当前工作目录CWD)

该文件不存在时,运行测试的路径将被视为当前工作目录CWD

测试用例文件中的相对路径(例如.csv)均需基于当前工作目录CWD

运行测试后,测试报告文件夹(reports)会生成在当前工作目录CWD

.env(可选):存储项目环境变量

.csv(可选):项目数据文件,用于进行数据驱动

reports(自动生成):运行后自动生成,无需创建

实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

测试开发视频教程、学习笔记领取传送门!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/688450.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于数据分析中NumPy,Pandas,看完这一篇基本够了

前言 数据分析是Python的重要应用领域之一:Python在数据分析领域有着广泛的应用,许多数据科学家和分析师使用Python作为主要的数据分析工具。学好数据分析可以让你更好地应用Python来解决实际问题,并提升在数据分析领域的竞争力。 在当今信…

04 todoList案例

React全家桶 一、案例- TODO List 综合案例 功能描述 动态显示初始列表添加一个 todo删除一个 todo反选一个 todotodo 的全部数量和完成数量全选/全不选 todo删除完成的 todo 1.1 静态组件构建 将资料包中的todos_page/index.html中核心代码添加到Todo.jsx文件中,…

高速电路设计系列分享-ADC电源的设计

文章目录 概要整体架构流程技术名词解释技术细节小结 概要 提示:这里可以添加技术概要 如今,在设计人员面临众多电源选择的情况下,为高速ADC设计清洁电源时可能会面临巨大挑战。在利用高效开关电源而非传统LDO的场合,这尤其重要。…

liunx服务器使用selenium

文章目录 前言一、服务器下载google-chrome、chromedriver1、下载chrome2、下载chromedriver 二、安装Xvfb和python库pyvirtualdisplay、selenium1、安装Xvfb2、安装python库pyvirtualdisplay 三、配置好后测试总结 前言 最近在本地windows系统(下面简称本地&#…

在线搭建K8S,kubernetes集群v1.23.9,docker支持的最后一个版本

1. 部署环境主机(条件说明) master 192.168.186.128 CentOS Linux release 7.9.2009 (Core) node1 192.168.186.129 CentOS Linux release 7.9.2009 (Core) node2 192.168.186.130 CentOS Linux release 7.9.2009 (Core)2. 系统初始化-所有节点&am…

探索MediaPipe的人像分割

MediaPipe是Google开源的计算机视觉处理框架,基于TensorFlow来训练模型。图像分割模块提供人像分割、头发分割、多类分割。本文主要探索如何实现人像分割,当然在人像分割基础上,我们可以做背景替换、背景模糊。 目录 一、配置参数与模型 1…

负载均衡 Load Balancing

负载均衡 Load Balancing 数据链路层负载均衡网络层负载均衡应用层负载均衡均衡策略与实现轮询与随机随机权重与加权轮询一致性 hash最少活跃数(最少连接数) 对于电商平台而言,随着业务的不断发展壮大,网站访问量和数据量也随之急…

什么是堆栈?c语言实现栈上的pop和push操作

什么是堆栈?c语言实现栈上pop和push操作的算法 堆栈(stack)实现栈上pop和push操作解释 堆栈(stack) 堆栈(stack)是一种数据结构,它具有后进先出(Last-In-First-Out&…

抖音seo矩阵系统源码开发部署思路

抖音SEO矩阵系统源码开发和部署是一项复杂而又关键的任务。在开发阶段,我们需要根据抖音的搜索规则和算法,结合用户搜索意图和关键词,进行深入的研究和分析,以建立一个优秀的SEO矩阵系统。 在部署方面,我们需要遵循以…

完全零基础,如何学习渗透?

网络渗透这一行,做个脚本小子,使使工具啥的,个把月就学会了,这不难。 很多人把网络渗透简单的理解成就是搞网站,这是大错特错的! 不过这也难怪,Web安全那三招两式,最好教也最好学&…

还在找wma格式怎么转换mp3?

在一个遥远的国度里,有一位名叫小芳的歌手,她声音甜美动人,深受人们的喜爱。然而,她的音乐制作团队告诉她,她的歌曲只能以wma格式发布。但是,她的粉丝们大多数使用的是mp3格式的音乐播放器,这让…

【Java】JVM(五)

垃圾回收机制 判断对象的存活 在堆里面存放着几乎所有的对象实例,垃圾回收器在对对进行回收前,要做的事情就是确定这些对象中哪些还是“存活”着,哪些已经“死去”(死去代表着不可能再被任何途径使用得对象了) 可达…

【pytest学习总结2.3】 - 如何使用固定装置fixtures(2)

目录 2.3.8 使用mark给固定装置传递数据 2.3.9 将固定装置工厂化 2.3.10 参数化固定装置 2.3.11 使用带有参数化固定装置的标记 2.3.12 使用来自固定装置功能中的固定装置 - 模块化 2.3.13 按固定装置实例自动分组测试 2.3.14 在类和模块中使用usefixtures 2.3.15 固定…

四.安防摄像机的WDR(HDR) 性能

四.安防摄像机的WDR(HDR) 性能 4.0 概述 WDR就是宽动态,wide dynamic range,或者HDR,high dynamic range,本质上是一回事,没任何区别。那么,到底什么是宽呢?很简单,搞不定的,就是太宽了,比如 摄像机装在室内,室内正常照度500lux,玻璃门外就是10000lux,室内外…

单机取证-鉴于信息安全管理与评估赛项-计算机单机取证特别说明-例题详解-Autopsy使用

芜湖~ 本期针对全国职业技能大赛-信息安全管理与评估赛项分析一下单机取证这个大项 并且取一例题 进行例题讲解 分享一些思路和逻辑 目录 题目 前言分析 .E01 ⽂件 DD 镜像和 E01 镜像的主要区别 如何打开和查看 E01 ⽂件扩展名? 常用工具使用-Autopsy 正…

现在这个年代,还有必要进行JVM调优吗?

导言 随着技术的不断发展,软件开发行业也在日新月异地进步。在过去的几十年里,Java语言和Java虚拟机(JVM)在开发企业级应用方面扮演了重要角色。然而,随着硬件和软件的进步,以及JVM本身的改进,…

Linux驱动学习(4) MTD字符驱动和块驱动1

系列文章目录 Linux驱动学习(4) 文章目录 目录 目录 系列文章目录 文章目录 前言 一、MTD是什么? 二、MTD子系统架构 1.Linux文件存储基本架构: ​ 2.MTD子系统基本架构: 总结 前言 MTD设备在嵌入式设备中…

2023网安面试题164道(附答案)

最近有不少小伙伴跑来咨询: 想找网络安全工作,应该要怎么进行技术面试准备?工作不到 2 年,想跳槽看下机会,有没有相关的面试题呢? 为了更好地帮助大家高薪就业,今天就给大家分享两份网络安全工…

【pytest学习总结2.2 】- 如何在测试中编写断言?

目录 2.2 如何在测试中编写断言 2.2.1 assert 断言 2.2.2 断言预期的异常 2.2.3 断言预期警告 【后续内容更新】 2.2.4 断言上下文 2.2.5 为失败的断言定义您自己的解释 2.2.6 断言的详细内容 🎁更多干货 完整版文档下载方式: 2.2 如何在测试中…

C++ 哈希思想 unordered_set unordered_map

文章目录 哈希思想常用的哈希函数哈希冲突解决方案哈希代码实现(C 源码)unordered_set & unordered_map 容器**unordered_set & unordered_map模拟实现**(C 源码) 哈希思想 抽象感受哈希的优点 如果我现在抛出一个问题&a…