工具介绍
Hurl是一个基于Rust语言的命令行工具,允许用户通过简单的纯文本格式定义和运行HTTP请求,适用于各种场景下的HTTP请求发送和测试。
主要特点
- 简单易用:提供了直观的方式来验证HTTP响应,支持HTML、REST/SOAP/GraphQL等多种API类型。
- 高效灵活:可以用于发送HTTP请求、测试接口、验证HTML内容,并支持多个链接、GraphQL查询和结果校验等特性。
- 链式调用:支持多个请求的链式调用,方便用户构建复杂的测试用例,以更全面地测试HTTP会话或API。
- 广泛适用:不仅适用于REST/JSON API的测试,还适用于HTML内容、GraphQL以及SOAP API等多种场景。
功能特点
- 文本格式请求:使用简单的文本格式定义HTTP请求,方便开发人员和运维人员理解和使用。
- 捕获与查询:可以捕获响应中的值,并支持对标头和正文响应进行查询和评估,满足不同的测试需求。
- 集成与报告:易于集成到CI/CD(持续集成/持续部署)流程中,支持生成多种格式的报告,如文本报告、JUnit报告和HTML报告。
应用场景
- 开发人员:快速发送和测试HTTP请求,验证接口的正确性和响应速度。
- 运维人员:进行接口监测、故障排查和性能测试,确保系统正常运行。
- CI/CD环境:作为一个快速、可靠的命令行工具,用于自动化测试接口和服务。
如需了解更多信息,可以访问其官方网站或查阅相关的技术文档。
官方GitHub
https://github.com/Orange-OpenSource/hurl
安装包
https://github.com/Orange-OpenSource/hurl/releases
官方文档
安装教程
Hurl在不同的操作系统上安装步骤有所不同,可以通过包管理器(如Homebrew、apt、yum等)或直接从GitHub发布页面下载并安装。
Ubuntu安装
sudo apt install hurl
Docker安装
只需拉取镜像即可,每次使用只需运行Docker执行操作即可。
sudo docker pull ghcr.io/orange-opensource/hurl:latest
使用教程
安装成功后,下一步是使用Hurl实现HTTP请求发送。通常使用文件形式完成请求发送。
GET请求
创建Hurl文件内容 (example1.hurl
),文件内容如下:
GET http://httpbin.org/get
HTTP/1.1 200
发送请求
hurl --file example1.hurl
上述示例发送GET请求到http://httpbin.org/get
,并期待返回一个200的状态码。
POST请求
创建Hurl文件内容 (example2.hurl
),文件内容如下:
POST https://api.example.com/create
Content-Type: application/json
{
"name": "幼稚猿",
"age": 6
}
发送请求
hurl --file example2.hurl
上述示例发送POST请求到https://api.example.com/create
,并在请求体中携带JSON数据。
上述示例只是简单演示了GET和POST请求,Hurl还能实现更复杂的HTTP请求,相关教程已在官方文档详细说明。