接口测试与调试工具-HTTPie
1、前言
对于测试人员,经常使用 Jmeter 或 Postman 进行接口测试与调试,其实市面上还有很多接口测试工具,本篇将介绍一个简单但功能强大的命令行 HTTP 和 API 测试客户端-HTTPie,适用于 API 时代,方便对 API、HTTP服务器和 web 服务进行测试和调试。
2、简介
HTTPie(发音为aitch-tee-tee-pie)是一个命令行 HTTP 客户端。它的目标是使 CLI 与 Web 服务的交互尽可能人性化。HTTPie 设计用于测试、调试以及通常与 API 和 HTTP 服务器交互。http&https命令允许创建和发送任意 HTTP 请求。它们使用简单自然的语法,并提供格式化和彩色输出。
特点:
(1)富有表现力和直观的语法
(2)格式化和彩色终端输出
(3)内置 JSON 支持
(4)表格和文件上传
(5)HTTPS、代理和身份验证
(6)任意请求数据
(7)自定义标题
(8)持续会话
(9)类似 Wget 的下载
(10)Linux、macOS、Windows 和FreeBSD 支持
(11)插件
(12)文档
(13)测试覆盖率
官网地址:
https://httpie.io/
3、安装
1、Python 环境下安装(普遍的)
请确保您拥有 Python 3.7 或更高版本
python -m pip install --upgrade pip wheel
python -m pip install httpie
2、Mac 系统下安装
如使用 Homebrew,需先安装Homebrew
brew update
brew install httpie
3、Windows 系统下安装
如使用 Chocolatey,需先安装Chocolatey
choco install httpie
4、Linux(Debian and Ubuntu)系统下安装
curl -SsL https://packages.httpie.io/deb/KEY.gpg | apt-key add -
curl -SsL -o /etc/apt/sources.list.d/httpie.list https://packages.httpie.io/deb/httpie.list
apt update
apt install httpie
5、Linux(CentOS and RHEL)系统下安装
yum install epel-release
yum install httpie
6、FreeBSD 系统下安装
pkg install www/py-httpie
4、快速上手
4.1、用法
打开终端,输入命令
用法:
http [方法] URL [请求项…]
1、方法:
支持的方法有 GET、POST、HEAD、PUT、PATCH、DELETE 等,还可以使用自定义方法名称。
该方法参数是可选的,当你不指定它时,HTTPie 默认为:
GET 对于没有正文的请求
POST 对于带有正文的请求
GET 请求:
http GET pie.dev/get
或
http pie.dev/get
POST 请求:
http POST pie.dev/post hello=world
或
http pie.dev/post hello=world
2、URL:
默认方案是 http:// 可以从参数中省略。
http example.org
# → http://example.org
例如1:访问官方 Hello World
https httpie.io/hello
例如2:访问百度
http www.baidu.com
4.2、示例
本篇模拟接口请求链接使用 moco 生成。
关于 moco 的部署与使用等,可点击 moco 系列章节进行查阅。
1、GET 请求,无参,返回值为 Moco Get
如图所示:Postman 执行结果
使用 HTTPie 命令:
http localhost:8083/getdemo2
如图所示:HTTPie 执行结果
2、GET 请求,有参,返回值为 操作成功
如图所示:Postman 执行结果
使用 HTTPie 命令:
http GET http://localhost:8083/getdemo username==admin password==123456
如图所示:HTTPie 执行结果
3、POST 请求,表单,返回值为 admin,123456
如图所示:Postman 执行结果
使用 HTTPie 命令:
http --form POST localhost:8083/postdemo2 username='admin' password='123456'
如图所示:HTTPie 执行结果
4、POST 请求,JSON,信息头传 ‘Content-Type’: ‘application/json’
返回值为
{"username": "administrator","password": "abcdef"}
如图所示:Postman 执行结果
使用 HTTPie 命令:
http POST localhost:8083/header Content-Type:application/json username=admin password=123456
如图所示:HTTPie 执行结果
5、有关更多使用方法
终端运行 ‘http --help’ 命令,或者访问 https://httpie.io/docs/cli 即可。
最后: 可以在公众号:伤心的辣条 ! 自行领取一份216页软件测试工程师面试宝典文档资料【免费的】。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。
学习不要孤军奋战,最好是能抱团取暖,相互成就一起成长,群众效应的效果是非常强大的,大家一起学习,一起打卡,会更有学习动力,也更能坚持下去。你可以加入我们的测试技术交流扣扣群:914172719(里面有各种软件测试资源和技术讨论)
喜欢软件测试的小伙伴们,如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
接口测试与调试工具-HTTPie相关推荐
- Postman入门教程之详细下载及安装教程
postman,一个接口测试或调试工具,具体的详细介绍,请参考文章: https://mp.weixin.qq.com/s/h27Z_XY0bfcRHVjasqEXRA (题外话,对英语不熟练的同学, ...
- Restful API接口调试工具推荐(Postman, HTTPie)
Postman https://www.getpostman.com/postman HTTPie https://httpie.org/ https://github.com/jakubroztoc ...
- postman登录鉴权之接口测试
一.背景 在做接口测试的时候,有些接口向后台请求数据的时候,是需要用户在登录情况下才有数据返回. 以电商平台为例,用户的个人中心,用户的订单列表,用户的支付信息等等,所有用户维度的数据都是需要登录态. ...
- soapui工具_python接口自动化(四)--接口测试工具介绍(详解)
简介 "工欲善其事必先利其器",通过前边几篇文章的介绍,大家大致对接口有了进一步的认识.那么接下来让我们看看接口测试的工具有哪些. 目前,市场上有很多支持接口测试的工具.利用工具进 ...
- 【工具篇】接口测试神器 -- Postman 入门教程
一.Postman概述 (1)工具介绍 Postman是一个接口测试工具,一款非常流行的API调试工具.在做接口测试的时候,Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求 ...
- 【Go语言】使用 http 库进行简单的接口测试
Go语言进行简单的接口测试 接口文档说明 Go语言基础代码 在正常的测试中,当我们需要进行接口测试时,通常使用接口调试工具,如postman进行接口测试 目前我在尝试使用Go语言进行接口测试,使用的库 ...
- Postman接口测试神器从安装到精通
1 摘要 Postman 是一个接口测试和 http 请求的神器,非常好用. 官方 github 地址: github.com/postmanlabs Postman 的优点: 支持各种的请求类型: ...
- web测试点总结---UI、兼容、功能、交互、安全、性能、接口测试
一.概述 1.什么是web? web的本意是蜘蛛网和网的意思,在网页设计中我们称为网页的意思.现广泛译作网络.互联网等技术领域.表现为三种形式,即超文本(hypertext).超媒体(hypermed ...
- 数据接口测试工具 Postman 介绍
此文介绍好用的数据接口测试工具 Postman,能帮助您方便.快速.统一地管理项目中使用以及测试的数据接口. 1. Postman 简介 Postman 一款非常流行的 API 调试工具.其实,开发人 ...
最新文章
- 最近做了一个搜索接口的优化,反复压测了四次,终于达到要求了
- 将 Docker 踢出群聊后,Kubernetes 还能否欢快地蹦跶吗?
- Hadoop系列三:Hadoop之Pig篇
- easyUI的引用顺序
- 如何调试 Android 上 HTTP(S) 流量
- css3中transform的用法
- C++ 比较两个字符串的“大小”
- 逆势增长 百度App日活破2亿
- 洛谷 P1396 营救
- 点击复制公众号按钮_96编辑器如何复制文章到公众号发布?
- 利用ESP定律进行脱壳 ——合天网安实验室学习笔记
- idea overlays文件夹_怎样把cyanogenmod移植到你自己的设备
- Vue3报错:Extraneous non-props attributes (style) were passed to component but could not be automatical
- 真实渗透改编--综合渗透 sql注入写马+文件上传+udf提权 安鸾靶场SQL注入学习
- [iOS开发]@autoreleasepool原理探究
- 脉脉发布AI人才数据图鉴;『李沐·深度学习论文精读』视频合辑;CVPR 2022自动驾驶资源合集;线性代数图绘笔记;前沿论文 | ShowMeAI资讯日报
- webpack 配置文件
- 元芳,你怎么看?元芳是谁?
- 面试高频算法题补充系列:木棍切割问题
- 修改tomcat的默认首页
热门文章
- 用python编写录音机——GUI控制录音开始与结束(PyQt5)
- Ubuntu中opencv的使用
- android项目中集成融云IM之实现消息提供者来显示群名
- 供应Pyrene-PEG-Biotin,Biotin-PEG-Pyrene,芘丁酸-聚乙二醇-生物素
- 关于使用CPU或GPU超频软件导致任务栏管理器CPU一栏资源占用100%的解决办法,并且通过电源设置达到处理器性能最大化。
- Java | IP工具类(获取访问者的ip地址 查询IP地址)
- 衡水商企联合会庆典 全国工商联·万祥军:商协社团谋定发展
- CAD下载完成之后想更大限度提高效率?这七个工具组合大有用处
- 阮老师详解ES6运算符扩展,浅显易懂!
- 从标题到活动谈谈微信运营三件事儿