Skip to content

Instantly share code, notes, and snippets.

@yokawasa
Last active September 6, 2025 00:50
Show Gist options
  • Select an option

  • Save yokawasa/097e2d1240580e51ebc1c01f01b85105 to your computer and use it in GitHub Desktop.

Select an option

Save yokawasa/097e2d1240580e51ebc1c01f01b85105 to your computer and use it in GitHub Desktop.
Postman CLIでPostmanコレクションまたはフォルダーレベルのテスト実行時にクレデンシャル情報をenv-bar経由で渡す方法

Postman CLIのenv-barオプションについて

Postman CLIでは、コレクション(or フォルダ)配下のテスト実行時に次のように--env-barオプションで環境変数の情報を指定できる

postman login --with-api-key <postman-api-key>
postman collection run <Collection ID> -i <Folder ID> --env-var key=value

この機能を利用すれば、もしあるAPIリクエスト設定で秘匿情報を扱う必要がある場合、その秘匿情報(ここではAPIキー)を次のように変数化({{api-key}})しておけば、実行時に秘匿情報を外部から注入が可能となる

APIリクエストの設定例 Screenshot 2025-08-26 at 16 55 18

Postman CLIの実行例

postman collection run <Collection ID> -i <Folder ID> --env-var api-key=<SECRET-KEY>

GitHub ActionsでPostman CLIを経由してPostmanテストを実行する例

GitHub Actionsで実行する場合は、GitHub Actionsビルトインのシークレットの仕組みが活用できる。たとえば、APIキー情報を、YOUR_API_KEYという名前のシークレットに保存すれば、次のようなパイプラインで実行できる

name: Automated API tests using Postman CLI

on: push

jobs:
  automated-api-tests:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install Postman CLI
        run: |
          curl -o- "https://dl-cli.pstmn.io/install/linux64.sh" | sh
      - name: Login to Postman CLI
          # Postmanにログイン
          run: postman login --with-api-key ${{ secrets.POSTMAN_API_KEY }}
      - name: Run API tests
        run: |
          # フォルダーレベルのテストを実行。実行時にenv-barオプションでapiキー情報を注入
          postman collection run "コレクションID" -i "フォルダID" --env-var api-key=${{ secrets.YOUR_API_KEY }}

上記パイプラインのトリガーはpushなので、もしスケジュール実行する場合は、次のようにトリガー設定すればよい。

on:
  # 毎時 30分に実行する例
  schedule:
    - cron:  '30 * * * *'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment