サービス仮想化ツール「Virtualize」の利用方法 Vol.2

サービス仮想化ツール「Virtualize」の機能や利用方法をご紹介します。

はじめに

ここでは、サービス仮想化ツール「Virtualize」を利用した仮想アセットの作成の流れを動画と共にお届けします。一般的には モックサーバースタブと呼ばれるものを「Virtualize」では 仮想アセットと呼びます。この記事では、Virtualizeで作成した仮想アセットをデータ駆動型の仮想アセットや、シナリオテスト用の仮想アセットに拡張する方法をご紹介します。

本記事で紹介する動画では、Virtualizeに関連する以下の用語が使用されています。
  • 仮想アセット :モックサーバーやスタブに該当するもの
  • レスポンダー :モックサーバーやスタブを構成する要素で、各APIに対するレスポンスを設定する機能
  • 応答条件 :レスポンダーでリクエストとレスポンスのマッピングをおこなうための設定
この記事を読む前に、前の記事も閲覧することをおすすめします。

STEP4:データ駆動型の仮想アセットに拡張する(モックサーバー/スタブの拡張)

API連携するアプリケーションのテストでは、さまざまなデータパターンでテストをおこなう場合が多くあります。この時に、予めExcelやCSVなどで用意したデータソースを使用し、データ駆動型テストをおこなうのが一般的です。Virtualizeは、API連携するアプリケーションのデータ駆動型テストにも対応しており、実際に応答を返すレスポンダーごとにデータソースと連携することができます。ここでは、Virtualizeで作成したレスポンダーをデータ駆動型に拡張する方法を2つご紹介します。

ケース1:既にデータソース(Excel, CSVなど)を用意している場合

予めExcelやCSVなどでデータソースを用意している場合は、まず最初に、テストで使用するデータソースを仮想アセットに追加します。




データソースにはレスポンスで利用したいテストデータを用意しておき、事前に仮想アセットに取り込んだデータソースと、レスポンダーの電文項目を紐づけることで、データ駆動型のレスポンダーに拡張できます。また、データソースを利用する場合の応答条件の設定も簡単におこなうことができます。





また、Virtualizeにはデータ投入機能が用意されており、このデータ投入機能では、レスポンダーに用意するレスポンスの電文項目とデータソースを一括でマッピングすることができるため、簡単にデータ駆動型のレスポンダーへ拡張することができます。





ケース2:データソースをこれから用意する場合

Virtualizeでは、作成したレスポンダーの電文項目から、CSVデータソースのテンプレートを自動生成する機能も搭載されています。これは、Virtualizeで作成したレスポンダーをデータ駆動型に拡張するうえで、データソースがまだ用意されていない場合に有効な機能です。CSVデータソースのテンプレートを自動生成した場合、レスポンスの電文項目とデータソースのマッピングも自動で行われるため、CSVデータソースにテストデータを設定することで簡単にバリエーション豊富なテストをおこなうことができます。







STEP5:シナリオテスト用の仮想アセットに拡張する(シナリオテスト用のモックサーバー/スタブ)

API連携するアプリケーションのテストでは、一連の操作を確認するためにシナリオテストを実施することが一般的です。 Virtualizeで作成したレスポンダーは、受信したリクエストから値を抽出し、レスポンスの値に設定したり、値のインクリメントやCRUD操作を伴うテストをおこなうなど、ユースケースに合わせたAPI連携するアプリケーションのシナリオテストに対応することができます。ここでは、Virtualizeで作成したレスポンダーをシナリオテストで利用する場合の概要についてご紹介します。

シナリオテスト用の仮想アセットの作成

Virtualizeで作成した複数のレスポンダーを組み合わせ、受信したリクエストに応じて、適したレスポンダーからレスポンスを返すように設定することで、シナリオテストを可能とします。レスポンダーでAPIの応答を仮想化することで、「いつでも」、「なんどでも」シナリオテストを実施可能な環境を提供します。




たとえば、同じリクエストでも、リクエストを受信する回数に応じてレスポンスデータが変わるようなシナリオでは、レスポンダーも動的に変わるように対応する必要があります。ユースケースとしては、以下の例があげられます。
・注文番号のインクリメント
・在庫数のデクリメント
Virtualizeでは、「シーケンスレスポンス機能」を利用することで、このようなシナリオテストにも対応することが可能です。








まとめ

STEP4とSTEP5を通して、データ駆動型の仮想アセットへの拡張方法やシナリオテスト用の仮想アセットの作成方法についてご紹介しました。この記事では、シリーズを通してVirtualizeを使用した仮想アセットの作成や、ユースケースに応じた拡張方法をご紹介してきました。ここでご紹介した動画は、チュートリアル動画でもご覧いただけます。

Virtualizeには、この記事でご紹介した機能の他にもさまざまな機能が搭載されています。ご興味がございましたら、「APIテスト自動化」および「サービス仮想化」のページもご覧ください。

このページは、「サービス仮想化ツール「Virtualize」の利用方法 Vol.2」です。関連する記事をまとめて読む場合は、「APIテストまるわかりガイド」から資料をダウンロードいただけます。
APIテストまるわかりガイドダウンロード

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

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

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

    03-4405-7853

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

お問い合わせ

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