すべてのプロダクト
Search
ドキュメントセンター

Performance Testing:オンライン教育のストレステスト例

最終更新日:Jan 08, 2025

このトピックでは、パフォーマンス テスト(PTS)でストレステストシナリオを調整し、ストレステストを実行する方法について説明します。 この例では、一般的なオンライン教育シナリオを使用します。

シナリオの説明

オンライン教育 Web サイトでは、コース選択に関連する Web ページでストレステストを実行する必要があります。 コース選択手順は、ビジネスロジックに基づいて 3 つのステップに分かれています。 次の情報は、各ステップのストレステスト要件について説明しています。

  1. オンライン教育システムにログオンします。

    • ユーザー名とパスワードを含む、ユーザーのログオン情報を構築します。

    • ユーザーのログオン情報を以下のリクエストに渡します。[コース一覧の表示][選択したコースの送信]。 ログオン情報は Cookie に保存されます。

  2. コース一覧を表示します。

    [コース ID][選択したコースの送信] リクエストに渡します。

  3. 選択したコースを送信します。

    • 前のリクエストから取得した [コース ID] を使用して、「選択したコースの送信」リクエストを構築します。

    • 「選択したコースの送信」リクエストが成功したかどうかを確認します。

次の図は、ストレステストシナリオの基本設定を示しています。

基本场景配置

前提条件

  • PTS がアクティブ化されています。 詳細については、「PTS のアクティブ化」をご参照ください。

  • CSV 形式のパラメーターファイルが準備されています。 次のサンプルコードは、コンテンツ形式の例を示しています。 パラメーターファイルの要件については、「パラメーターファイルの規則」をご参照ください。

    username,password
    user1,Password1
    user2,Password2
    user3,Password3
    

ステップ 1:ストレステストシナリオを設定する

  1. PTS console にログオンし、 を選択し、 をクリックします。パフォーマンステスト > シナリオの作成PTS

  2. パラメーターファイルをインポートして、データソースを追加します。

    1. [データソース] をクリックします。 [ファイル] タブで、[+ ファイルのアップロード] をクリックし、アップロードするオンプレミスのパラメーターファイルを選択します。

    2. パラメーターファイルをアップロードした後、[最初の行をパラメーター名として使用する] を選択します。 このオプションを選択すると、パラメーター名を定義する必要はありません。 PTS がファイルを読み取るときに、パラメーターファイルの最初の行のデータは無視されます。

    3. [最初の行をパラメーター名として使用する] を選択します。 このオプションを選択した後、パラメーター名を指定する必要はありません。 最初の行のデータはパラメーター名として使用されます。 PTS がパラメーターファイルを読み取るときに、PTS は最初の行のデータを無視します。 パラメーターファイルの最初の行のデータがパラメーター名でない場合は、ビジネスシナリオに基づいて各列のパラメーター名を指定する必要があります。image

  3. パラメーターノードを追加します。

    1. [シナリオ設定] タブで、ストレステスト API を追加し、[命令の追加] の横にあるドロップダウン矢印をクリックして、 を選択します。パラメーター

    2. [データソースパラメーター] タブで、既存のパラメーター名を選択します。

      説明
      • 各行を 1 回だけ使用してリクエストを組み立てたい場合は、[1 回使用する] を選択します。 必要なデータが 1 回ポーリングされると、設定された負荷レベルに関係なく、ストレステストシナリオは新しいストレステストリクエストの生成を停止します。

      • ストレステスト中にパラメーターを再利用する場合は、[1 回使用する] を選択しないでください。

      • [1 回使用する] または [ベースライン列] を選択できますが、パラメーターに対して両方を選択することはできません。 [1 回使用する] を選択した場合は、[ベースライン列] を選択できません。

      image

  4. ストレステストシナリオを調整します。

    1. ログオン API 操作を設定します。

      [テスト URL]:テストする URL を入力します。 この例では、[テスト URL]: テストする URL を入力します。この例では、http://web.example.com/login が使用されています。

      [リクエストメソッド]:POSTを選択します。リクエストメソッド: POST を選択します。

      [本文の定義]Content-Type パラメーターを x-www-form-urlencoded に設定し、テキストエディターの右上隅にある [テキスト形式] をクリックし、テキストエディターに {"username":"${username}","password":"${password}"} を入力します。

      image

      説明

      Cookie に保存されているユーザーログオン情報は、ストレステストシナリオの他の API 操作と自動的に共有されます。 他の API 操作のログオン情報を手動で設定する必要はありません。

    2. コース一覧のクエリに使用する API 操作を設定します。

      [API の追加] をクリックし、[HTTP] を選択して API 操作を追加します。 次に、基本的なリクエスト情報を設定します。

      • [テスト URL]:ストレステストを実行する URL を入力します。 この例では、テスト URL: ストレステストを実行する URL を入力します。この例では、http://web.example.com/mocks/online/list が使用されています。

      • [リクエストメソッド]:POSTを選択します。リクエストメソッド: POST を選択します。

      特定の [コース ID] を次のリクエストに渡すには、現在の API 操作のレスポンスから [コース ID] を抽出し、コース ID を出力パラメーターとして使用する必要があります。 次の図は、[出力パラメーターの定義] タブで必要な設定を示しています。

      image

      • [出力パラメーター名]:カスタムパラメーター名を入力します。

      • [ソース]:レスポンス本文の解析形式を選択します。 たとえば、[本文:JSON] を選択できます。

      • [解析式]:レスポンスの詳細に基づいて解析式を入力します。

        たとえば、次のレスポンス本文に示されている 2 番目のコース ID を抽出する場合は、schedule_list[1].ID 式を設定する必要があります。

        {
        "schedule_list": [
        {
        "Name": "math", // 数学
        "ID": "001"
        },
        {
        "Name": "english", // 英語
        "ID": "002"
        },
        {
        "Name": "science", // 科学
        "ID": "003"
        }
        ]
        }                                
        説明

        式デバッグ機能を使用して、API 操作の出力パラメーターに設定した式をデバッグできます。 これは、式が正しいかどうか、またビジネス要件を満たしているかどうかを確認するのに役立ちます。 デバッグが成功した場合は、API 操作の出力パラメーターのリストで式を使用できます。 詳細については、「ストレステストシナリオをデバッグする」をご参照ください。

    3. 選択したコースを送信するために使用される API 操作を設定します。

      [API の追加] をクリックし、[HTTP] を選択して API 操作を追加します。 次に、基本的なリクエスト情報を設定します。

      • [テスト URL]:ストレステストを実行する URL を入力します。 この例では、http://web.example.com/mocks/online/submit が使用されています。

      • [リクエストメソッド]POST を選択します。

      [リクエスト本文の定義] タブをクリックします。 このタブで、request body の前の API 操作のレスポンス情報から抽出されたコース ID を設定します。

      设置body

      • [content-type]x-www-form-urlencoded を選択します。

      • [キー]:カスタムキーを入力します。 例:ID_from_last_api

      • [値]:ページの下部にある [パラメーター] をクリックします。 [パラメーター] パネルで、[セッションパラメーター] タブをクリックします。 [セッションパラメーター] タブで、ID などのビジネスセッションパラメーターを表示し、コピーアイコンをクリックして目的のパラメーター値をコピーします。 次に、コピーしたパラメーター値を [値] 列に貼り付けます。

      [出力パラメーターの定義] タブをクリックします。 このタブで、次のパラメーターを設定します。

      设置出参2

      • [出力パラメーター名]:カスタムパラメーター名を入力します。 例:result

      • [ソース]:レスポンス本文の解析形式を選択します。 例:[本文:テキスト]

        説明

        この例では、[ソース] パラメーターに [本文:テキスト] を選択する必要があります。 ストレステストシナリオをデバッグするときに、式デバッグ機能を使用して設定済みの式をデバッグできます。

      • [解析式]:レスポンスの詳細に基づいて解析式を入力します。 この例では、レスポンス本文は result:success です。 この場合、解析式は result:(.+) として設定する必要があります。

      [チェックポイント(アサーション)] タブをクリックします。 このタブで、API 操作のチェックポイントを設定します。 チェックポイントは、「選択したコースの送信」リクエストが成功したかどうかを確認するために使用できます。

      设置检查点

      • [チェックポイントタイプ][出力パラメーター] を選択します。

      • [チェックオブジェクト][result] を選択します。

      • [条件][等しい] を選択します。

      • [コンテンツ]success を入力します。

ステップ 2:[ストレステストに関連する設定を構成する]

ストレステストシナリオを設定した後、[PTS シナリオの作成] ページの [ストレスモードの設定] セクションと [負荷レベルの設定] セクションで、ストレステストに関連する設定を構成する必要があります。

ステップ 3:ストレステストシナリオをデバッグし、ストレステストを開始する

  1. シナリオをデバッグして、設定が有効かどうかを確認し、テストの失敗を防ぐことができます。 シナリオをデバッグすることをお勧めします。 詳細については、「シナリオのデバッグ」をご参照ください。

  2. [PTS シナリオ] ページの下部にある [保存して開始] をクリックします。 [注記] ダイアログボックスで、[実行サイクル] パラメーターを [今すぐ実行] に設定し、[テストは許可されており、適用される法律および規制に準拠しています] のチェックボックスをオンにして、[テストの開始] をクリックします。

ストレステスト結果を分析する

ストレステストが完了すると、システムは、ストレステストシナリオメトリック、ビジネスの詳細、監視の詳細、API サンプリングログなど、テスト中に生成されたデータを取得し、ストレステストレポートを生成します。 レポートは、[レポート] ページで表示できます。 詳細については、「PTS ベースのストレステストレポートを表示する」をご参照ください。 image