What Hurl Does
- Plain text format — readable, version-controllable
.hurlfiles - Request chaining — multiple requests in one file
- Captures — extract values from responses into variables
- Assertions — status, header, body, JSONPath, XPath, regex
- Variables — inject via CLI or capture
- Cookie handling — automatic across requests
- Certificate — client certs and custom CA
- Performance — libcurl-based, very fast
- CI-friendly —
--testmode with exit codes - Report — HTML, JSON, JUnit XML output
Comparison
| Tool | Format | CI | Language |
|---|---|---|---|
| Hurl | Plain text | Excellent | Rust |
| HTTPie | CLI args | OK | Python |
| curl | CLI args | OK | C |
| Bruno | .bru files | CLI | JS |
| Postman | JSON/GUI | Newman | JS |
常见问题 FAQ
Q: Hurl vs curl? A: curl 是单请求工具,Hurl 是多请求编排 + 断言工具。Hurl 内部用 libcurl,但加了链式请求、capture/assert、test mode。API 测试用 Hurl 更好。
Q: 和 Postman 比? A: Hurl 是纯文本 + CLI(Git 友好、CI 原生),Postman 是 GUI(可视化好但文件不好 diff)。开发者倾向 Hurl。
来源与致谢 Sources
- Docs: https://hurl.dev
- GitHub: https://github.com/Orange-OpenSource/hurl
- License: Apache 2.0