Apidog CLIとHoppscotch CLIは、どちらもターミナルからAPIテストを実行し、CI/CDに組み込めるCLIランナーです。違いは役割です。Hoppscotch CLIはHoppscotchコレクションを実行するオープンソースのランナーです。一方、Apidog CLIは、API設計、テスト、モック、ドキュメントを含むApidogプラットフォームをCLIから操作するための入口です。
簡単な判断
-
Hoppscotch CLIを選ぶべきケース
- オープンソースとセルフホスティングを重視する
- すでにHoppscotchを使っている
- CIレポートはJUnit XMLで十分
-
Apidog CLIを選ぶべきケース
- CLI、HTML、JSONレポートを使い分けたい
- CSV/JSONでデータ駆動型テストを実行したい
- クラウドにテストレポートをアップロードしたい
- CLIだけでなく、設計、モック、ドキュメント、テストを同じプラットフォームで扱いたい
比較
| 項目 | Apidog CLI | Hoppscotch CLI |
|---|---|---|
| インストール | Apidog runner / apidog CLI |
npm i -g @hoppscotch/cli(Node v22以降) |
| 実行対象 | テストシナリオ、コレクション | Hoppscotchコレクション |
| ソース | Apidogプロジェクト、OpenAPIインポート | コレクションJSONファイル、インスタンスID |
| データ駆動型 |
-d でCSV/JSON |
--iteration-data CSV + --iteration-count
|
| レポート | CLI、HTML、JSON、クラウドアップロード | JUnit XML |
| スクリプト | プリ/ポストプロセッサー、アサーション | プリリクエスト + pw.test() / pw.expect()
|
| 仕様リンティング | スタンドアロンリンターなし(インポート時に検証) | なし(ランナー用途) |
| コードとしてのリソース管理 | エンドポイント、スキーマ、ブランチ、マージリクエスト | なし |
| オープンソース | なし(フリーティアあり) | あり、セルフホスト可能 |
| プラットフォーム | 設計、モック、ドキュメント、テストを1つのアプリで管理 | Hoppscotchエコシステムの一部 |
インストールと最小実行
Hoppscotch CLI
Hoppscotch CLIはnpmからインストールします。Node.js v22以降が必要です。Node 20を使う場合はCLI v0.26.0を使います。
npm i -g @hoppscotch/cli
ローカルのコレクションJSONを実行します。
hopp test ./collection.json -e ./staging.env.json
HoppscotchインスタンスからコレクションIDで実行する場合は、トークンとサーバーURLを渡します。
hopp test <collection-id> \
--token <access_token> \
--server https://hoppscotch.your-company.com
Apidog CLI
Apidog CLIはApidog runnerを使って実行します。認証後、シナリオIDと環境IDを指定します。
apidog run \
-t <scenario-id> \
-e <env-id> \
--access-token <token>
新規セットアップはApidog CLIインストールガイドを確認してください。
実行の基本は次の流れです。
- ApidogでAPIプロジェクトを作成する
- APIまたはOpenAPI定義をインポートする
- テストシナリオを作成する
- シナリオID、環境ID、アクセストークンを取得する
- CIまたはローカルで
apidog runを実行する
実行モデルの違い
Hoppscotch CLI
Hoppscotch CLIはHoppscotchコレクションを実行します。
各リクエストでは、主に次の処理が行われます。
- プリリクエストスクリプトを実行
- HTTPリクエストを送信
-
pw.test()とpw.expect()でテストスクリプトを評価 - アサーション失敗時にゼロ以外の終了コードを返す
CIでは、終了コードを使ってジョブの成功/失敗を判定できます。
hopp test ./collection.json -e ./staging.env.json
Apidog CLI
Apidog CLIは、Apidogプロジェクト内で作成したテストシナリオを実行します。
シナリオでは、複数ステップを連結し、変数を共有し、前のレスポンスを次のリクエストやアサーションで利用できます。
apidog run -t <scenario-id> -e <env-id> --access-token <token>
アプリ上で設計・デバッグしたシナリオを、そのままCIで実行できるため、別途コレクションをエクスポートする手順を減らせます。
シナリオの考え方はApidog CLI完全ガイド、REST APIのCLI実行例はコマンドラインからREST APIをテストするを参照してください。
データ駆動型テスト
同じテストを複数データで繰り返す場合、データ駆動型テストを使います。
Hoppscotch CLIでCSVを使う
Hoppscotch CLIでは、CSVファイルと反復回数を指定します。
hopp test ./collection.json \
--iteration-data ./users.csv \
--iteration-count 5
CSVの例です。
email,password
user1@example.com,password1
user2@example.com,password2
Apidog CLIでCSVまたはJSONを使う
Apidog CLIでは -d でCSVまたはJSONを渡します。
apidog run \
-t <scenario-id> \
-d ./users.csv \
-r cli,html
JSONデータを使う場合は、ネストされたフィクスチャや既存のJSONデータをそのまま扱いやすくなります。
apidog run \
-t <scenario-id> \
-d ./users.json \
-r cli,json
フォーマットの柔軟性が必要な場合はApidogが向いています。CSV/JSONの使い分けはApidog CLIデータ駆動型テストガイドで確認できます。
レポート出力
Hoppscotch CLI: JUnit XML
Hoppscotch CLIはJUnit XMLを生成できます。
hopp test ./collection.json \
--reporter-junit ./report.xml
JUnit XMLは多くのCIでサポートされています。GitHub Actions、GitLab CI、Jenkinsなどでテスト結果を表示する用途には十分です。
Apidog CLI: CLI、HTML、JSON、クラウドレポート
Apidog CLIは複数形式のレポートを出力できます。
apidog run \
-t <scenario-id> \
-r cli,html,json
クラウドにアップロードして共有可能なレポートURLを作成することもできます。
apidog run \
-t <scenario-id> \
--upload-report
使い分けの例です。
- ローカル確認:
-r cli - PRレビュー用アーティファクト:
-r html - 後続処理や集計:
-r json - Slackやチケットで共有:
--upload-report
詳細はApidog CLIテストレポートガイドを参照してください。
CI/CDに組み込む例
Hoppscotch CLIの例
name: API Tests
on:
pull_request:
jobs:
api-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
- run: npm i -g @hoppscotch/cli
- run: |
hopp test ./collection.json \
-e ./staging.env.json \
--reporter-junit ./report.xml
Apidog CLIの例
name: API Tests
on:
pull_request:
jobs:
api-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Apidog scenario
run: |
apidog run \
-t ${{ secrets.APIDOG_SCENARIO_ID }} \
-e ${{ secrets.APIDOG_ENV_ID }} \
--access-token ${{ secrets.APIDOG_ACCESS_TOKEN }} \
-r cli,html,json
CIで扱う場合は、トークン、シナリオID、環境IDをSecretsに保存してください。失敗時はCLIの終了コードでジョブを失敗させます。
オープンソースとセルフホスティング
Hoppscotchの強みは、オープンソースでセルフホスト可能な点です。自社環境でバックエンドを運用し、リクエストデータをベンダークラウドから分離できます。
次のようなチームにはHoppscotch CLIが合います。
- オープンソースツールを優先したい
- セルフホストが必須
- データレジデンシー要件が厳しい
- JUnit XMLだけでCIレポート要件を満たせる
関連する比較として、Hoppscotchの代替品やPostman vs Hoppscotchも参考になります。
Apidogはオープンソースではありません。フリーティアはありますが、主な価値は「よりオープン」ではなく、設計、モック、ドキュメント、テストを統合して扱える点です。
テスト実行を超えて使う場合
Apidog CLIは単なるテストランナーではなく、ApidogプラットフォームのCLIインターフェースとして使えます。
扱える領域には、次のようなものがあります。
- OpenAPIのインポート
- エンドポイント管理
- スキーマ管理
- 環境管理
- ブランチ
- マージリクエスト
- テストシナリオ実行
そのため、APIリソースをGitスタイルのワークフローに近い形で管理したい場合に向いています。
一方、Hoppscotch CLIは設計上、コレクション実行に特化しています。API設計、モック、ドキュメント管理は別の仕組みと組み合わせる必要があります。
注意: どちらもOpenAPIリンターではない
Apidog CLIには、スタンドアロンのOpenAPIリンターやスタイルガイド用コマンドはありません。インポート時に仕様を検証しますが、専用リンターのようにルールベースでリンティングするものではありません。
Hoppscotch CLIもランナーであり、OpenAPIリンターではありません。
ターミナルで仕様リンティングが必須なら、次のようなツールを別途使います。
- Redocly CLI
- Spectral
ランナーとしての違いはApidog CLI vs Newmanでも比較されています。
どちらを選ぶべきか
Hoppscotch CLIが向いているケース
- すでにHoppscotchを使っている
- オープンソースとセルフホストを重視する
- CIではJUnit XMLがあれば十分
- コレクション実行だけをCLIで自動化したい
hopp test ./collection.json \
-e ./staging.env.json \
--reporter-junit ./report.xml
Apidog CLIが向いているケース
- API設計、モック、ドキュメント、テストを1つの場所で管理したい
- CSV/JSONでデータ駆動型テストを実行したい
- HTML/JSON/クラウドレポートが必要
- アプリで作ったテストシナリオをそのままCIで実行したい
apidog run \
-t <scenario-id> \
-e <env-id> \
-d ./users.json \
-r cli,html,json
既存のコレクションを試す場合は、Apidogをダウンロードしてインポートできます。
よくある質問
どちらもデータ駆動型テストをサポートしていますか?
はい。Hoppscotchは --iteration-data と --iteration-count を使います。データ形式はCSVです。
Apidogは -d を使い、CSVまたはJSONを指定できます。
どちらのレポートが優れていますか?
CIダッシュボードにJUnit XMLを表示するだけならHoppscotchで十分です。
HTML、JSON、クラウド共有レポートも必要ならApidogの方が選択肢が多くなります。
Hoppscotch CLIは無料でオープンソースですか?
はい。セルフホストも可能です。詳細は公式ドキュメントとGitHubリポジトリを確認してください。
Apidogにはフリーティアがありますが、オープンソースではありません。
HoppscotchコレクションをApidogに移行できますか?
はい。Hoppscotchからコレクションをエクスポートし、Apidogにインポートしてから apidog run で実行できます。
コマンド対応は移行ガイドにまとまっています。
まとめ
Hoppscotch CLIは、オープンソース、セルフホスト、JUnit XMLを重視するチームに適したコレクションランナーです。
Apidog CLIは、データ駆動型テスト、複数形式のレポート、クラウド共有、設計からテストまでの統合ワークフローを必要とするチームに向いています。
コレクション実行だけならどちらも使えます。すでに使っているAPIクライアントと、CIで必要なレポート形式に合わせて選ぶのが実装上の最短ルートです。統合APIプラットフォームの一部としてCLIを使いたい場合は、Apidogを選択してください。
Top comments (0)