Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space FUNCTDEV and version SOAVIRT_9.10.8_CTP_3.1.4

SOAtest は、WADL または RAML の定義あるいは URL からの RESTful サービスをテストすることができます。

このセクションの内容:

Table of Contents
maxLevel1

WADL が利用可能な場合の RESTful サービスのテスト

SOAtest では、REST Client ツールによって RESTful サービスをテストすることができます。以下の演習では、REST Client ツールを使って ParaBank Loan Request API をテストします。

サービスの機能を表現する WADL (Web Application Description Language) にアクセスできる場合、SOAtest を使って、WSDL をパースする場合と似た方法で機能テスト スイートを作成することができます。以下の演習では、ParaBank の WADL を使ってテストを作成します。

WADL の RESTful サービスをテストするには、以下の操作を行います。

  1. ローカルに ホストされた ParaBank アプリケーション ( 「ParaBank のセットアップ」で説明) が実行中であり、WADL にアクセスできることを確認します。
  2. テスト ケース エクスプローラーで、テスト スイート: テスト スイート ノードの 1 つを右クリックし、[新規追加] > [テスト スイート] を選択します。
  3. [REST] > [WADL] を選択して [次へ] をクリックします。
  4. [WADL URL] フィールドで http://localhost:8080/parabank/services/bank?_wadl&_type=xml と入力し、[WADL の検証およびポリシーを適用するテストを作成] チェックボックスをオンにして [次へ] をクリックします。



  5. WADL をチェックするための 3 個のテストが追加されたことが分かります。
    • テスト 1: スキーマの妥当性: W3C の WADL スキーマに対して、WADL の XML を検証します。
    • テスト 2: セマンティックな妥当性: WADL をパースし、実際のユーザーのようにコンシュームして WADL の正しさをチェックします。ただし、より厳格に規格に従います。
    • テスト 3: WADL レグレッション: WSDL ドキュメント中の変更を検出できるように、WADL の回帰コントロールを作成します。



  6. 新しいテスト スイートが作成され、WADL が提供するサービスに対応したサブテスト スイートと REST Client ツールが合わせて作成されたことが分かります。



  7. テスト スイート: accounts の下に作成された新しい REST Client ツールをダブルクリックします。すべての Path パラメーターはすでに自動的に伝播されています。ただし、ParaBank から有効な結果を取得するために、有効なアカウント ID を提供しなければなりません。
  8. [Path] の設定で、accountId の下に 12345 と入力して有効なアカウント ID を提供します。



    URL に 12345 が追加された点に注意してください。
  9. 保存して REST Client を実行します。
  10. REST Client に連結された Traffic Viewer をダブルクリックし、[レスポンス] タブを開きます。アカウント #12345 の詳細情報を ParaBank サーバーが返したことが分かります。

OpenAPI/Swagger または RAML の定義からのテスト生成

OpenAPI/Swagger 定義からテストを作成」および「RAML 定義からのテスト作成」を参照してください。

URL を使った RESTful サービスのテスト

この演習では、完全なアプリケーション機能を記述した WADL にアクセスできない場合に RESTful サービスをテストする方法について説明します。

URL を使って RESTful サービスをテストするには、以下の操作を行います。

  1. テスト ケース エクスプローラーで、テスト スイート: テスト スイート ノードの 1 つを選択し、ツールバーの [テスト スイートの追加] ボタンをクリックします。
  2. [テスト スイートの追加] ウィザードで、[空] を選択して [終了] をクリックします。
  3. 新規作成したテスト スイートをダブルクリックし、[名前] フィールドに REST Example と入力します。 変更を保存してテスト スイート エディターを閉じます。
  4. テスト ケース エクスプローラーで テスト スイート: REST Example を選択し、ツールバーの [テストまたは出力の追加] ボタンをクリックします。
  5. 左側で [標準テスト] を選択し、右側で [REST Client] を選択して [終了] をクリックします。新しい REST Client ツールが追加され、そのエディターが開きます。
  6. ツールの名前を Loan Request (JSON Response) に変更します。
  7. [サービス定義] がデフォルトで [なし] に設定されている点に注意してください。ほとんどの RESTful サービスは、URL とクエリーから構成される、純粋に GET ベースのサービスです。通常は XML または JSON のレンポンス ペイロードに応答します。
  8. RESTful サービスにリクエストを提供します。[URL] フィールドに http://localhost:8080/parabank/services/bank/requestLoan?customerId=1&fromAccountId=12345&amount=100&downPayment=1 と入力し、[メソッド] ドロップダウン メニューから [POST] を選択します。



  9. パス テンプレートとクエリー パラメーターを使って値がすでに自動的に設定されていることが分かります。さらにパラメーターを追加したい場合、ここで追加できます。





  10. [HTTP オプション] タブで、 [HTTP ヘッダー] オプションを選択して [追加] をクリックします。Accept という名前で application/json という値の新しいヘッダーを追加します。 このヘッダーを省略した場合、サービス レスポンスは XML になります。このヘッダーを追加すると、サービス レスポンスは JSON になります。



  11. REST Client のエディターを保存します。
  12. テストを実行し、Traffic Viewer でトラフィックを確認します。JSON メッセージをグラフィカルな表示で見たい場合、リテラル ビューからツリー ビューに切り替えることができます。

    リテラル ビュー:



    ツリー ビュー: