Repolode
Orange-OpenSource

Orange-OpenSource/hurl

Hurlは、プレーンテキスト形式のファイルに記述したHTTPリクエストを実行・テストするコマンドラインツールです。

代替できる製品:Postman

スター
19,266
フォーク
750
未解決の Issue
202
最終コミット
19 時間前

これは何?

Hurlは、シンプルなプレーンテキスト形式で記述したHTTPリクエストを実行するコマンドラインツールです。複数のリクエストを連鎖させたり、レスポンスから値を取得して後続のリクエストで再利用したりできます。また、XPath、JSONPathなどを使い、ヘッダーやボディに対するアサーションでレスポンスを検証できます。

データの取得だけでなく、HurlはHTTPセッションのテストにも使えます。ステータスコード、ヘッダー、Cookie、SHA-256ハッシュ、SSL証明書のプロパティ、リダイレクト、レスポンス時間に対するアサーションをサポートし、CI/CDパイプライン向けにテキスト、JUnit、TAP、JSON、HTML形式のレポートを生成できます。REST、SOAP、GraphQL、HTML、XML/JSON APIに対応しています。

HurlはRustで書かれており、HTTPエンジンとしてlibcurlを使用するため、--resolve、--connect-to、--proxyなどのcurlオプションを利用できます。ランタイム不要の単一バイナリとして配布され、リクエストをcurlコマンドとして出力することもできます。

主な機能

  • 01複数のHTTPリクエストを連鎖できるプレーンテキスト形式のリクエストファイル。
  • 02レスポンスから値を取得し、後続のリクエストで再利用できます。
  • 03XPath、JSONPath、正規表現などの条件を使って、ヘッダーやボディをアサーションで検証できます。
  • 04REST、SOAP、GraphQL、HTML、XML/JSON APIに対応しています。
  • 05CIパイプライン向けに、テキスト、JUnit、TAP、JSON、HTML形式のレポートを生成します。
  • 06libcurlを基盤とし、HTTP/2とHTTP/3、およびcurlオプションに対応しています。

ユースケース

  • CI/CDパイプラインでAPIのスモークテストや統合テストを実行する。
  • Webアプリケーションに対する複数段階のログインやCSRFフローをスクリプト化する。
  • API開発中にレスポンスのステータス、ヘッダー、JSONフィールドを検証する。
  • プロジェクト内にテキストファイルとして保存した、再現可能なHTTPリクエストを送信する。

トピック

よくある質問

hurl とは?
Hurlは、プレーンテキスト形式のファイルに記述したHTTPリクエストを実行・テストするコマンドラインツールです。 Hurlは、シンプルなプレーンテキスト形式で記述したHTTPリクエストを実行するコマンドラインツールです。複数のリクエストを連鎖させたり、レスポンスから値を取得して後続のリクエストで再利用したりできます。また、XPath、JSONPathなどを使い、ヘッダーやボディに対するアサーションでレスポンスを検証できます。
hurl は無料で使えますか?ライセンスは?
hurl は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
hurl は今もメンテナンスされていますか?
活発にメンテナンス中。hurl の最終コミットは 2026年10月21日 です。
hurl は何に使えますか?
CI/CDパイプラインでAPIのスモークテストや統合テストを実行する。 Webアプリケーションに対する複数段階のログインやCSRFフローをスクリプト化する。 API開発中にレスポンスのステータス、ヘッダー、JSONフィールドを検証する。 プロジェクト内にテキストファイルとして保存した、再現可能なHTTPリクエストを送信する。
hurl はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/Orange-OpenSource/hurl

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト