Postmanを活用した効率的なAPIテスト自動化のススメ / Efficient API Test Automation Using Postman
Presentation Slides for Postman Tokyo Meetup 2023.8 Session title: Postmanを活用した効率的なAPIテスト自動化のススメ / Efficient API Test Automation Using Postman
Date: 2023/08/08
APIシステムは複雑 UI JavaScript Gateway Item API Search API Document API Item Service Search Service Document Service Item DB Search DB Document Storage UI/JS API DB Externa Servicel APIシステムは複数要素で構成 ● 複数レイヤ(層)で構成 ● 複数コンポーネントで構成 ● 外部サービスも利用 ● エンドユーザーは複数のAPIを組 み合わせて利用 品質を担保するには質の高いテストが 必要となる
テストの目的とは? テスト活動を通じて、プロダクトについ て最大限に学び、品質に影響をおよぼ しうる問題を発見すること 引用: Mark Winteringham, Web APIテスト技法 ( "Testing Web APIs"の邦訳版) テストの目的と価値を明らかにするために役に立つテストのモデル
All rights reserved by Postman Inc Postmanとは? 全世界2,500 万人以上のユーザーに使われている APIを 構築して利用するためのAPIプラットフォームです。 APIライフサイクルの各ステップを簡単に行えるようになり、 APIの共有と開発コラボレーションを効率化できます。
シナリオテスト例 - リクエストのループ ある数分のデータセットが完了するまであるリクエストをループする例。ここではRequest Aで取得した ユーザー数分の位置情報が取れるまでRequest Bをループする Request A GET users Request B GET positions userList postman.setNextRequest(“Request B”) index Request C GET weather Lat Lon サンプルコレクション - Using Request Workflows
モックサーバーを活用したテスト自動化の偽陽性の削減 テストの自動化において厄介なものの1つに偽陽性(false positive)がある。偽陽性とは失敗すべきでない ときに失敗してしまうことを指し、偽陽性のあるテストのことをFlakyテストと呼ぶ。 テスト自動化において偽陽性が発生しうるケースに外部システムとの連携がある。例えば、外部システムの 障害や期待しない挙動が頻繁に発生する場合、その度にテストはエラーになる。このようなケースにおいて、 外部システムをモックにすることはとても有効である。 Register API 外部サービス 認証 API POST /regist Flaky この部分にモックに変える 参考: Mark Winteringham, Web APIテスト技法 ( "Testing Web APIs"の邦訳版) データ処理