多くのユーザーは、Postman Collection Runner(コレクションランナー)を使って、APIテストを行なっています。ただし、最近のPostmanはコレクションランナーに新しい制限を課したので、頻繁にPostmanを使ってAPIテストを行なっている方にとって、作業を邪魔してしまう可能性があります。
Postmanコレクションランナーの制限は、特定の期間内にコレクションを実行できる回数を指します。Postman側からの説明によると、この制限は、Postman APIの悪用を防ぎ、サービスがすべてのユーザーにとって安定していることを保証するために課されています。
Postmanのコレクションランナーの制限
Postmanは、2023年2月15日から無料顧客に対して、次のような制限を課すことにしました。既存の有料プランのお客様は、2023年3月15日以降のプラン更新時に同じ制限が有効になります(エンタープライズユーザーを除く)。
コレクションランナーの制限:FreeとBasicプランを利用しているユーザーは、1ヶ月間でコレクションを最大25回実行できます。Professionalプランのユーザーは、1ヶ月で間最大250回実行できます。エンタープライズユーザーに対して制限がありません。
Postmanで上限に達したら、「 You have exhausted all the runs. To keep running collections, create an account..(実行回数を使い切りました。コレクションの実行を続けるには、アカウントを作成してください。)」といったエラーが発生します。
このコレクションランナーの制限は、コレクション別で課されるものではなく、すべてのコレクションが適用されています。したがって、Postmanで複数のコレクションを持っている場合、これらのコレクションを頻繁に実行することができなくなります。実行回数の上限に達していると、作業を前に進めるには、プランをアップグレードする必要があります。
Postmanコレクションとは
Postmanコレクションは、API開発とテストのためのツールであるPostmanで使用される重要な概念です。APIテスト自動化を実現するためによく使われています。コレクションを使用すると、開発者はAPIの各エンドポイントを簡単に実行できます。Postmanは、コレクション内のリクエストを自動化するための多くの機能を提供しています。例えば、複数のリクエストを順番に実行することができ、レスポンスを検証するためのテストスクリプトを実行することができます。コレクションを実行した後、結果がすべて記録され、レポートが生成されます。
また、Postmanはコレクションの共有も容易にします。コレクションを他の開発者と共有することで、APIの仕様やテストの手順を明確に伝えることができます。共有されたコレクションは、他の開発者がPostmanを使用して直接実行できるため、チーム全体での協力やデバッグが容易になります。
そこで、Postmanのコレクションは、API開発中に非常に必要となっている機能です。コレクションの実行回数の上限に達していると、作業時間がとても長くなる可能性もあります。このような場合、Postmanコレクションランナーの制限を解消する対策を見つけないといけません。
対策:Postmanコレクションランナーの制限を解消
Postmanは、新しいコレクションランナーの制限を発表した途端、多くのユーザーは不満を表明していたのにも関わらず、Postman側は依然としてこのような制限を前向きに検討して課しました。現時点までも、Postmanがこのような制限を再考しようと呼びかけているユーザーもいれば、Apidogのようなもっと柔軟なソリューションを提供している代替ソフトを利用し始めるユーザーもいます。
Apidogは、完璧なAPI管理ツールとして、APIの設計、開発、デバッグ、テストにも対応できます。最も重要なことに、Apidogは、コレクションの作成と実行におけて、何の制限も設けていません。また、Apidogは完全に日本語されたUIを持ち、それを使用することで、APIテスト自動化を簡単に実現されますし、テスト中のリアルタイムのフィードバック、およびテスト後の詳細のテストレポートなども簡単に取得できます。
対策⒈Apidogでコレクションを作成して実行(無料)
Postmanとは異なり、Apidogはコレクションの作成と実行に制限を設けていないので、開発者は、思い通りにコレクションを作成したり、実行したりすることが許可されます。それに、Apidogを使って、これらの作業を完全無料で実現することができます。また、Apidogのオンラインアプリを使って、この作業をオンラインで実現することもできます。
PostmanからApidogへの切り替えも非常に簡単にです。Postmanからコレクションの制限にあった場合、Postmanからデータをエクスポートして、Apidogに導入するだけで、その制限を直ちに解除することができるのです。詳しくは完全移行ガイド:PostmanからApidogに切り替える方法をご参照ください。
また、Apidogをダウンロードするか、ブラウザアプリを使用して、下記のステップを参照して、Postmanのようなコレクションを作成して、一括に実行することもできます。
ステップ⒈ プロジェクトを選択して、左側メニューから「自動テスト 」を選択して、「+」ボタンをくりっして、「新規テストケース」を選択します。
ステップ⒉ここで新規テストケースの各項目を設定して、「確認」ボタンを押します。
ステップ⒊ コレクションを作成するために、ここでテストのステップを追加します。APIのテストケースから、APIからインポートすることもできますし、カスタムRequestを追加することもできます。また、必要に応じて、グループ、繰り返し、条件分岐、待ち時間などの項目を設定することも可能です。
ステップを追加すると、各ステップの順番を変えたりすることも可能で、テストはここで設定されたステップに従って、実行できます。
ステップ⒋ 右側のメニューでテストの設定項目を自分のニーズに応じてカスタマイズすることができます。Postmanのコレクション設定項目もここで見つけることができます。
往復:設定したテストのステップを繰り返し回数を設定します。
スレッド数:同時に実行状態に置くことができるプログラム数を設定します。
遅延時間:各リクエストが実行する度の間隔時間(m秒単位)
ステップ⒌ 設定が終わると、「実行」ボタンをクリックして、テストを開始します。テストプロセスは、指定のステップの順に従って、実行されます。
テストプロセスが終わると、詳細のテストレポートが生成され、各リクエストの詳細情報も確認できます。
Apidogを使用することは、Postmanのコレクションランナーの制限を解決できる一番簡単で直接な対策になると思います。もし、Postmanから他のツールに切り替えることが欲しくない場合、下記の対策をも参照してください。
対策⒉Postmanのプランをアップグレード
PostmanのFreeとBasicプランは、25回のコレクション実行が許可されているので、25回以上実行したい場合、プランをProfessionalにアップグレードする必要があります。Professionalプランでは、コレクションの実行回数は250回まで上がっています。250回の実行回数は、大部のAPI開発に対して十分になります。250回でも不十分な場合、エンタープライズ(企業)プランにアップグレードしてください。エンタープライズプランは、無制限にコレクションを実行できます。
対策⒊古いコレクションをアーカイブ
Postmanには、たくさんのコレクションが存在している場合、古くてあまり使っていないコレクションをアーカイブすることがおすすめです。そうすると、新しいコレクションが利用できるコレクションの実行回数が増えます。ただし、すでに上限に達している場合、この対策は役に立ちません。
対策⒋Postman APIを使用
Postman APIを使用して、コレクションをプログラムで実行できます。これは、Postmanアプリで実行するよりも効率的です。
対策⒌ コレクションを最適化
Postmanのコレクションの実行回数は、極めて制限されていますので、それを無駄に使用しないように、コレクションを最適化する必要があります。コレクションの最適化により、コレクション内のすべてのステップとクリエストが有意義であることを保証できます。これはコレクションの実行回数を最小限に消化することを実現できます。
まとめ
Postmanのコレクションランナーの新制限により、頻繁にAPIテストを行う場合、Postmanのコレクションの実行回数は足りなくなる可能性があります。本文では紹介した対策2、3、4、5がありますが、あくまでも予防対策です。本文の対策2、3、4、5を参照して、コレクションの実行回数を最小限にすることができますが、Postmanのコレクション実行制限を突破するものではありません。
Postmanのコレクション制限を解消するには、Apidogという代替ソフトを使用しないといけません。Apidogにはコレクションの作成と実行に制限を設けていないので、Postmanより効率的にコレクションを実行して、テストの自動化を実現できます。