Postman CLI 活用事例:API のインテグレーションテストの自動化を試みる
株式会社コラボスタイル / ふくだ
テックリード / 従業員規模: 51名〜100名 / エンジニア組織: 11名〜50名
利用プラン | 利用機能 | ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|---|---|
Free プラン | Postman CLI, Postman Collections | 10名以下 | 2023年11月 | B to B |
利用プラン | Free プラン |
---|---|
利用機能 | Postman CLI, Postman Collections |
ツールの利用規模 | 10名以下 |
ツールの利用開始時期 | 2023年11月 |
事業形態 | B to B |
アーキテクチャ
アーキテクチャの意図・工夫
以下の YAML ファイルは Rust で実装した Web アプリケーションを BitBucket Pipelines でテストするための設定ファイルです。
cargo run
ではアプリケーションを実行中のままとなりコマンドが完了しないため、sleep 60
で次のコマンドに強制的に移るようにしています。
(なかなか強引な方法と思われるため、改善したいポイントです...)
参考:bitbucket-pipelines.yml
pipelines:
custom:
integration-test:
- step:
caches:
- cargo-home
- cargo-target
script:
- rustup component add rustfmt
- cargo install sqlx-cli
- cp .env.pipeline .env
- sqlx database create
- curl -o- "https://dl-cli.pstmn.io/install/linux64.sh" | sh # Postman CLI をインストール
- cargo run & sleep 60 # sleep で次のコマンドへ進ませる
- postman collection run ./postman/test.postman_collection.json
services:
- postgres
definitions:
caches:
cargo-home: /usr/local/cargo
cargo-target: target
services:
postgres:
image: postgres
variables:
POSTGRES_DB: 'sample_db'
POSTGRES_USER: 'postgres'
POSTGRES_PASSWORD: 'postgres'
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
- REST API のテストツールが統一されておらず、REST API のテストにおける知見の蓄積がされない
- REST API のインテグレーションテストの実施と自動化
どのような状態を目指していたか
- REST API のテストツールの統一化
- REST API のインテグレーションテストの自動化
比較検討したサービス
- cURL
- runn
比較した軸
- ドキュメントが充実しているか
- 勢いのあるサービス・ツールで今後の発展が期待できるか
選定理由
- 公式ドキュメントが豊富であること
- デファクトスタンダードなツールで、参考記事も多いこと
- Free プランがあり導入コストが小さく、簡単にトライできること
導入の成果
改善したかった課題はどれくらい解決されたか
試験的な導入段階のため、改善できそうという期待を得ることができました!
どのような成果が得られたか
Postman CLI を使ったインテグレーションテストを BitBucket Pipelines に組み込むことができて、自動化の試験的導入ができました。
また、Postman を社内の API テストツールとして標準化することで、開発効率を上げられそうという期待を持つこともできました。
導入時の苦労・悩み
試験的な導入段階のため、現時点ではありません!
導入に向けた社内への説明
上長・チームへの説明
まずは Free プランで検証・導入できるため、上長への説明は Postman 導入でできることを説明した程度で、すぐ検証を開始することができました。
また、情報収集のために Postman Meetup に参加しました。
活用方法
- BitBucket Pipelines 上での API のテスト
- 開発中のAPI デバッグ
よく使う機能
Postman CLI
CLI ツールなので、ローカルで実行することはもちろん、CI/CD パイプラインで実行することもできます。
応用が効くため、様々なユースケースで活用することができそうです。
Postman Collections
GUI で簡単に Collection を作成でき、エクスポートすることで CLI でテストを実行することができます。
ツールの良い点
- API プラットフォームとしてデファクトスタンダードのポジションにある
- Free プランがある
- Meetup が開催されており、情報キャッチアップがしやすい
ツールの課題点
- ドキュメントが英語のものが多い
ツールを検討されている方へ
Postman には Free プランがあり導入障壁が低いため、まずは試してみるという姿勢で導入を検討してみるのが良いかと思います!
また、Postman はよく技術カンファレンス等に協賛しており、直接お話を伺いできる機会があります。
Postman 主催の Meetup が開催されている点もユーザー同士で情報交換できるので、メリットとして大きいと思います。
今後の展望
- Postman を社内の API テストツールとして標準化する
- Postman API プラットフォームで自社サービスの API の公開する
株式会社コラボスタイル / ふくだ
テックリード / 従業員規模: 51名〜100名 / エンジニア組織: 11名〜50名
よく見られているレビュー
株式会社コラボスタイル / ふくだ
テックリード / 従業員規模: 51名〜100名 / エンジニア組織: 11名〜50名
レビューしているツール
目次
- アーキテクチャ
- 導入の背景・解決したかった問題
- 活用方法