テストのシフトレフトを実現するサービス仮想化ツール「Virtualize」

サービス仮想化ツール「Virtualize」を利用し、高性能なスタブの新規作成・利用と応答条件の設定方法について、動画でご紹介します。

「Virtualize」では、お客様のテストのシフトレフトを実現するさまざまな仮想化が可能です。このページでは一部のユースケースにおいて、「Virtualize」による仮想化の設定方法をご紹介しています。お客様のユースケースで必要な仮想化の方法が見つからない場合は、ページ下部の「フォームから問い合わせる」より、お気軽にお問合せください。
サービス仮想化ツール「Virtualize」の概要については、サービス仮想化でアプリケーションをテストをご覧ください。

1. スタブの新規作成

1-1. マニュアルでレスポンダーを作成

API の応答を仮想化するレスポンダーをマニュアルで作成する方法をご紹介します。こちらの例では、SOAP Message Responder という SOAP Web サービスの応答を仮想化するツールを利用し、書籍の検索APIの応答を仮想化します。SOAP Message Responder で応答させたい電文を設定することで、設定は完了です。※ [Parasoft イベント詳細] パースペクティブは、メニューの [ ウィンドウ] → [パースペクティブ] → [パースペクティブを開く] → [その他] から開く事ができます。





1-2. 定義ファイルからレスポンダーの自動生成

API の仕様を定義するファイル(Swagger、RAML、WSDL、XML スキーマ等)からレスポンダーを自動生成します。この例では SOAP Web サービスの仕様を定義する、WSDL ファイルを読み込み、レスポンダーを生成します。生成する8つのレスポンダーの雛形の内、書籍の検索 API の応答を仮想化するレスポンダーを編集します。





1-3. トラフィックのキャプチャとレスポンダーの自動生成

トラフィックのキャプチャ

バックエンドの API とのデータ連携でやり取りする電文を記録し、テキストファイルに保存する方法をご紹介します。この電文ファイルを読み込むことで、レスポンダーを自動生成することができます。電文の記録には、Virtualize のプロキシ機能を利用します。フロントエンドのアプリケーションとバックエンドの API とのデータ連携が、プロキシを経由してやり取りするように設定します。フロントエンドのアプリケーションを操作した際に生じる電文をプロキシによって記録し、テキストファイルに保存します。






キャプチャしたトラフィックからレスポンダーを自動生成

電文が記録されたファイルを基に、レスポンダーを自動生成する方法をご紹介します。こちらの方法では、電文ファイルに記録されたデータが設定されたレスポンダーを自動生成します。複数の API との通信を記録した場合には、複数のレスポンダーが生成され、シナリオテストを実施することができます。





2. スタブの利用&スマートなスタブに拡張

2-1. レスポンダーのデプロイ&利用

作成済みのレスポンダーをデプロイし、アプリケーションから利用する方法をご紹介します。複数のレスポンダーがデプロイされている場合は、リクエストに対応したレスポンダーが応答するするため、クライアントアプリケーションのシナリオテストを実施することができます。





2-2. レスポンダーの応答条件

リクエストに対して適切な文脈でレスポンダーが応答するように、応答条件を設定する方法をご紹介します。リクエストヘッダーやリクエストボディの各項目を応答条件として設定できます。こちらの例では、リクエストボディの "title" 項目を応答条件として設定し、 "title" 項目の値に応じてレスポンダーに適切な文脈(データ)で応答させる例をご紹介します。





2-3. レスポンダーの補足機能

レスポンダーに設定が可能な補足機能の例をご紹介します。レスポンダーで応答する電文のヘッダー情報の追加・編集、ステータスコードの編集、思考時間の設定など施した場合のレスポンダーの挙動を確認します。また、レスポンダーに応答させない設定や、エンコーディングの指定方法についても追加でご紹介します。





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

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

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

    03-4405-7853

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

お問い合わせ

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