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

このセクションの内容:

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 メッセージをグラフィカルな表示で見たい場合、リテラル ビューからツリー ビューに切り替えることができます。
    リテラル ビュー:

    ツリー ビュー:
  • No labels