9. WebService テスト計画の構築¶
このセクションでは 、WebService をテストするためのテスト計画を作成する方法を学習します。One page にリクエストを送信する 5 人のユーザーを作成します。また、ユーザーにテストを 2 回実行するように指示します。したがって、リクエストの総数は (5 ユーザー) x (1 リクエスト) x (2 回繰り返す) = 10 HTTP リクエストです。テスト計画を作成するには、次の要素を使用します: Thread Group、 HTTP Request、および Aggregate Graph。
サンプラーが Web サービスからエラーを受け取っているように見える場合は、SOAP メッセージを再確認し、形式が正しいことを確認してください。特に、 xmlns属性が WSDL とまったく同じであることを確認してください。xml 名前空間が異なる場合、Web サービスはエラーを返す可能性があります。
9.1 WebService テスト計画の作成¶
テスト計画では、.NET Web サービスを使用します。Web サービスの作成の詳細については説明しません。Web サービスの作成方法がわからない場合は、Google で Web サービスを検索し、Java および .NET 用の Web サービスの作成に慣れてください。.NET と Java の Web サービスの実装方法には大きな違いがあることに注意してください。トピックが広すぎて、ユーザー マニュアルでカバーできません。違いをよりよく理解するには、他の情報源を参照してください。
メニュー のBuilding a SOAP Webservice Test Plan " を選択します。次に、「作成」ボタンをクリックします。
] を使用して開始し、 テンプレート "
- 「HTTP Request Defaults 」で「 Server Name of IP」を変更します
- 「Soap Request 」で、「 Path:」
を変更します。
図 9.1.1 Web サービスのパス
次に、「HTTP Header Manager 」を選択し、Web サービスに一致するように「 SOAPAction 」ヘッダーを更新します。この場合、一部の Web サービスは SOAPAction を使用しない場合があります。
現在、SOAPAction を使用するのは .NET のみであるため、他のすべての Web サービスの SOAPAction が空白であることは正常です。リストには、JWSDP、Weblogic、Axis、The Mind Electric Glue、および gSoap が含まれます。

最後のステップは、SOAP メッセージを「Body Data」テキスト領域に貼り付けることです。

9.2 ユーザーの追加¶
スレッド グループは、シミュレートするユーザーの数、ユーザーが要求を送信する頻度、送信する要求の数を JMeter に伝えます。
まだ選択していない場合は、ツリーでスレッド グループ要素を選択します。JMeter ウィンドウの右側のセクションにスレッド グループ コントロール パネルが表示されます (下の図 9.2 を参照)。

まず、スレッド グループにわかりやすい名前を付けます。名前フィールドに、JMeter Users と入力します。
次に、ユーザー (スレッドと呼ばれる) の数を 10 に増やします。
次のフィールドであるランプアップ期間は、デフォルト値の 0 秒のままにします。このプロパティは、JMeter に各ユーザーの開始までの遅延時間を伝えます。たとえば、5 秒の Ramp-Up Period を入力すると、JMeter は 5 秒の終わりまでにすべてのユーザーの起動を終了します。したがって、5 人のユーザーと 5 秒のランプアップ期間がある場合、開始ユーザー間の遅延は 1 秒になります (5 ユーザー / 5 秒 = 1 秒あたり 1 ユーザー)。値を 0 に設定すると、JMeter はすぐにすべてのユーザーを開始します。
最後に、「Forever 」というラベルの付いたチェックボックスをクリアし、「 Loop Count」フィールドに値2を入力します。このプロパティは、テストを繰り返す回数を JMeter に伝えます。ループ カウント値として0を入力すると、JMeter はテストを 1 回だけ実行します。JMeter でテスト計画を繰り返し実行するには、Forever チェックボックスを選択します。
完成した JMeter ユーザー スレッド グループについては、図 9.2 を参照してください。

9.3 テスト結果を表示するためのリスナーの追加¶
テスト計画に追加する必要がある最後の要素は Listenerです。この要素は、HTTP 要求のすべての結果をファイルに保存し、データのビジュアル モデルを提示する役割を果たします。
JMeter Users 要素を選択し、Aggregate Graphリスナーを追加します ( )。次に、出力ファイルのディレクトリとファイル名を指定する必要があります。ファイル名フィールドに入力するか、[参照] ボタンを選択してディレクトリを参照し、ファイル名を入力します。

9.4 残りの Web サービス¶
HTTP リクエストでのみ変更する必要があるため、REST Web サービスのテストは非常に似ています。
- 方法:テストしたいものを選択する
- 本文データ: JSON、XML、または任意のカスタム テキストにすることができます