APIテストとは何か?REST APIテストの正攻法 Vol.2

DXのデータ連携を実現するREST APIのテスト手法についてご紹介する記事です。

「APIテストとは何か?REST API テストの正攻法」ページへ自動的に遷移します。

はじめに

この記事は、「Vol.1 APIテストとは何か?REST API テストの正攻法」の続きです。
ここでは、REST APIテストの重要性について説明します。

なぜ REST API のテストを行うのか?

開発者とテスト担当者は、スマートフォンのアプリや PC ブラウザー操作などの、UI 操作の対象となるフロントエンドだけでなく、バックエンドの REST API の信頼性も保証する必要があります。システム全体の品質を確保するために、REST API テストは欠かせません。
 
幸いなことに、REST API テストは、UI と切り離して実行できます。REST API と直接対話(データ連携)するテストケースを設計し、REST API レベルで機能をテストする事には、主に次の2つの利点があります。
 
  • UI からの操作では入力データ制限や画面操作を伴うテストの手間などからテストしにくいケースであっても REST API なら UI 操作を行なうことなく、直接テストデータを投入して検証できる
  • REST API は UI と比較して作りが単純であるため、テスト資産のメンテナンスの容易さも含め、自動化に向いている

REST API テストへのアプローチ

REST API テストにアプローチする最善の方法は、ボトムアップ的に堅固なテストプラクティスを構築することです。その際、テスト戦略の設計方法として非常に優れているのは、Martin Fowler が提唱するテストピラミッドに従うことです。このピラミッド型のアプローチでは、堅固なユニットテストの基盤の上に、幅広い REST API のテスト(コントラクトテスト、シナリオテスト、パフォーマンステストなど)を構築することが推奨されます。REST API テストでは、ユニットテストでは不可能なレベルでアプリケーションロジックをテストできます。

ユニットテストと REST API テストは互いを補完します。SDLC(ソフトウェア開発ライフサイクル)の後半ではなく、早期に実装に近いレベルでアプリケーションをテストすることは、「fail fast and fail early」つまり早期に欠陥を検出するのに役立ちます。 ユニットテストは重要ですが、今回の記事では REST API に焦点を当てて、API レベルでのテストについて取り上げます。

では、どのような REST API テストがあるのでしょうか?REST API テストはなぜ重要なのでしょうか?どのように REST API のテストを実施すればよいのでしょうか?

まとめ

次回は、REST APIのさまざまなテスト手法について、使いどころや利点なども含めて説明します。

このページは、「Vol.1 APIテストとは何か?REST API テストの正攻法」の続きです。Vol.1からVol.3をまとめて読む場合は、資料ダウンロードいただけます。

「APIテストとは何か、APIテストの正攻法」資料ダウンロード 

APIのテスト自動化とサービス仮想化を1ツールで SOAtest/Virtualizeに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
parasoft-info@techmatrix.co.jp

お問い合わせ

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。