次の方法で共有


ロード テストの実行

ロード テストのニーズに応じた構成オプションを作成、編集、設定した後で、Visual Studio Ultimate によって、ロード テストの実行用オプションが提供されます。

ヒントヒント

ロード テストを実行する前に、ロード テストに含まれているすべての Web パフォーマンス テストと単体テストが、単独で実行された場合に成功するかどうかを確認することをお勧めします。Web パフォーマンス テスト エディターからテストを実行することにより、テストを検証できます。データ バインディングのある Web パフォーマンス テストでは、すべてのデータ値を実行します。

ロード テストを実行するための考慮事項

ロード テストを実行する前に、ロード テストがテストの要件または目的に応じて適切に構成されていることを確認する必要があります。

適切なロード パターンを選択する

テストの目的に応じたロード テストの各シナリオに対するロード パターンを選択します。

  • 持続ロード パターン

  • ステップ ロード パターン

  • ゴール志向ロード パターン

ロード テストの結果ストアの場所を選択する

ロード テストの結果ストアに関する考慮事項

パフォーマンス カウンターのサンプリング間隔を適切に設定する

パフォーマンス カウンターのサンプリング間隔に関する考慮事項

タイミングの詳細の指定とパーセンタイル データの収集を検討する

タイミングの詳細の指定とパーセンタイル データの収集に関する考慮点

SQL トレースの有効化を検討する

SQL トレースの有効化の検討

追加のテスト エージェントが必要かどうかを判断する

テスト エージェントをオーバーロードしない

詳細については、「Considerations for Load Tests」を参照してください。

グラフ モード

既定では、ロード テストの実行中は、ロード テスト アナライザーはグラフ ビューにあります。グラフは次の 2 つのモードのいずれかで表示できます。

  • 折りたたみモード  折りたたみは、ロード テストが実行されているときのロード テスト アナライザーの既定のグラフ モードです。折りたたみグラフはロード テストの実行中に使用されます。このモードでは、テストの全実行時間のパフォーマンス カウンターの傾向が表示されますが、メモリに保持する必要があるデータの量は少なくて済みます。

  • スクロール モード   スクロール グラフ モードは、ロード テストの実行中に結果を表示するときに使用できます。スクロール グラフは、最近のデータ ポイントを示すオプションのビューです。テストで最近 100 件のデータ間隔のみを表示するには、スクロール グラフを使用します。

    [!メモ]

    ズーム グラフ モードは、データベースを基に、完了したロード テスト結果を表示する場合にのみ使用できます。

グラフ モードの変更

ロード テスト中に折りたたみモードとスクロール モードを切り替えるには、ロード テスト アナライザーのツール バーにある [グラフのオプション] ドロップダウン リストを使用します。折りたたみモードの場合は [実行全体のグラフ データ]、スクロール モードの場合は [最近のデータのみのグラフ表示] を選択します。

タスク

タスク

関連するトピック

ロード テストの実行設定の構成: 実行設定とは、ロード テストの実行方法に影響を与えるプロパティのセットです。実行設定は、[プロパティ] ウィンドウでカテゴリ別に整理されています。

ロード テストの実行: さまざまなユーザー インターフェイス オプションを使用して、ロード テストを実行したり、コマンド ラインからロード テストを実行したりできます。

リモートでのロード テストの実行: テスト エージェントとテスト コントローラーを使用して、1 つ以上のリモート コンピューターでロード テストを実行できます。

テスト実行中のテスト結果のグラフィカルな表示: ロード テストの結果は、テストの実行中、およびテストの完了時に複数のペインのデータとして表示されます。

ロード テスト実行中のコメントの追加: ロード テストの実行中または完了後にロード テストを解析する場合、ロード テスト結果と共に、永続的に格納される説明付きのコメントと、任意の長さの解析コメントを追加できます。

すべてのコンピューターへのロード テストおよび Web パフォーマンス テストの配布: コンピューター グループを使用して、テスト用にシミュレートされた負荷を生成し、複数のコンピューターで同時にリモートでテストを実行できます。

ロード テストのネットワーク エミュレーションのトラブルシューティング: ロード テストでネットワーク エミュレーションが正常に作動しているかどうかを確認できます。

チーム ビルドでのロード テストの実行: ビルドの完了後に実行されるように構成できるテスト カテゴリに、ロード テストを追加できます。

ロード パターンに関する考慮事項

テストの目的に応じたロード テストの各シナリオに対する次のロード パターンのいずれかを選択します。

詳細については、「ロード パターンを編集して仮想ユーザー アクティビティをモデル化」を参照してください。

ms184776.collapse_all(ja-jp,VS.110).gif持続ロード パターンを使用します

持続ロード パターンは、ロード テストの実行中に同じユーザー ロードを実行するために使用されます。ユーザー数の多い持続ロード パターンを使用すると、ロード テストの開始時にサーバーに対して不適切で現実的ではない確認要求が行われる場合があるので、注意が必要です。たとえば、ロード テストにホーム ページへの要求から始まる Web テストがあり、ロード テストの持続ロードを 1,000 ユーザーに設定すると、ロード テストでは最初の 1,000 の要求をできるだけ速くホーム ページに送信します。これは、Web サイトへの実際のアクセスのシミュレーションとして現実的ではない場合があります。これを軽減するには、徐々に 1,000 ユーザーまで増加するステップ ロード パターンの使用を検討するか、ロード テストの実行設定でウォームアップ期間を指定します。ウォームアップ期間を指定すると、ロード テストではウォームアップ期間中に負荷が徐々に高くなっていきます。詳細については、「シナリオの開始遅延の設定」を参照してください。

ms184776.collapse_all(ja-jp,VS.110).gifステップ ロード パターンを使用して

ステップ ロード パターンは、ロード テストの実行中にサーバーの負荷を増加するために使用できます。これにより、ユーザー ロードが増加するにつれてパフォーマンスがどのように変化するかを確認できます。たとえば、ユーザー ロードが 2,000 ユーザーに増加したときにサーバーがどのように動作するかを確認するには、次に示すプロパティでステップ ロード パターンを使用して 10 時間のロード テストを実行します。

  • 初期のユーザー カウント: 100

  • 最大ユーザー カウント: 2000

  • ステップ実行間隔 (秒): 1800

  • ステップごとの傾斜増加時間 (秒): 20

  • ステップごとのユーザー カウント: 100

これらの設定では、100 人、200 人、300 人をはじめ、2,000 人までのユーザー ロードで、30 分 (1,800 秒) のロード テストを実行します。これらのプロパティの中で "ステップごとの傾斜増加時間" プロパティは、新しいロード テスト ウィザードで使用できない唯一のプロパティです。このプロパティでは、1 つのステップから次のステップ (たとえば、100 人から 200 人) へ突然増加するのではなく、徐々に増加させることができます。この例では、ユーザー ロードは、20 秒にわたって 100 人から 200 人のユーザーに増加します。つまり、毎秒 5 人の増加です。詳細については、「方法: ステップ ロード パターンの "ステップごとの傾斜増加時間" プロパティを指定する」を参照してください。

ms184776.collapse_all(ja-jp,VS.110).gifゴール志向ロード パターンを使用する

ゴール志向ロード パターンは、リソース使用量があるレベルに達するまでにシステムでサポートできるユーザー数を決定する場合に便利です。このオプションは、システムで制限されているリソース (つまり、ボトルネック) が既に特定されている場合に最適です。たとえば、システムで制限されているリソースがデータベース サーバーの CPU であることがわかっており、データベース サーバーの CPU が約 75% ビジー状態になったときにサポートできるユーザー数を知りたい場合は、パフォーマンス カウンター "%Processor Time" の値を 70 ~ 80% に維持するゴール志向ロード パターンを使用できます。

Caution メモ注意

他の複数のリソースがシステムのスループットを制限している場合は、ゴール志向ロード パターンで指定されたゴールに達しない場合があります。また、ユーザー ロードは、[最大ユーザー カウント] に指定された値に達するまで増加し続けます。

このロード パターンでは、必要とする負荷が示されないことが多くあります。したがって、ゴール志向ロード パターンでのパフォーマンス カウンターの選択には注意が必要です。また、[最大ユーザー カウント] の値をユーザー ロードの上限に設定するかどうかは慎重に決定してください。

ロード テストの結果ストアに関する考慮事項

Visual Studio Ultimate をインストールすると、ロード テストの結果ストアは、コンピューターにインストールされる SQL Express のインスタンスを使用するよう設定されます。SQL Express は、最大でディスク容量の 4 GB に使用が制限されています。長期間にわたって多くのロード テストを実行する場合、使用可能であれば、ロード テストの結果ストアが完全な SQL Server 製品のインスタンスを使用するように構成することを考慮してください。詳細については、「ロード テストの結果リポジトリ内のロード テストの結果の管理」を参照してください。

パフォーマンス カウンターのサンプリング間隔の考慮事項

ロード テストの長さに基づいて、ロード テストの実行設定の [サンプル速度] プロパティの値を選択します。既定値 (5 秒) のように、サンプル速度の値が小さい場合、ロード テスト結果のデータベースにはより多くの容量が必要になります。長いロード テストでは、サンプル速度を増加すると、収集するデータ量を減らすことができます。詳細については、「方法: ロード テストの実行設定のサンプル速度を指定する」を参照してください。

以下は、サンプル速度のガイドラインです。

ロード テストの継続時間

推奨サンプル速度

< 1 時間

5 秒

1 ~ 8 時間

15 秒

8 ~ 24 時間

30 秒

> 24 時間

60 秒

タイミングの詳細の指定とパーセンタイル データの収集に関する考慮事項

ロード テスト エディターの実行設定には、[タイミングの詳細ストレージ] というプロパティがあります。[タイミングの詳細ストレージ] プロパティを有効にすると、ロード テスト中に個々のテスト、トランザクション、およびページの実行にかかる時間がロード テストの結果リポジトリに格納されます。これにより、90 パーセンタイル データや 95 パーセンタイル データが、ロード テスト アナライザーの [テスト]、[トランザクション]、および [ページ] の各テーブルに表示されます。

[タイミングの詳細ストレージ] プロパティを [StatisticsOnly] および [AllIndividualDetails] という実行設定プロパティで有効にするには、2 つの選択肢があります。どちらのオプションの場合にも、すべてのテスト、ページ、およびトランザクションの時間が測定され、それぞれのタイミング データからパーセンタイル データが計算されます。その違いは、[StatisticsOnly] オプションではパーセンタイル データが計算された直後に、個々のタイミング データがリポジトリから削除されます。タイミング詳細を使用すると、結果リポジトリに必要な容量が減少しますが、上級ユーザーは SQL ツールを使用して、他の方法でタイミング詳細データを処理することもできます。この場合は、[AllIndividualDetails] オプションを使用して、その処理にタイミング詳細データを使用できるようにする必要があります。さらに、このプロパティを [AllIndividualDetails] に設定した場合は、ロード テストの実行完了後にロード テスト アナライザーで仮想ユーザー アクティビティ チャートを使用して仮想ユーザーのアクティビティを分析できます。詳細については、「ロード テスト アナライザーの詳細ビューでのロード テストの仮想ユーザー アクティビティの分析」を参照してください。

[!メモ]

Visual Studio 2010 以前の Visual Studio のバージョンでは、Microsoft Visual Studio 2005 と Visual Studio 2008が、[タイミングの詳細ストレージ] のプロパティで設定 [すべての個別詳細] は使用できませんでした。Visual Studio 2010 と Visual Studio 2012では、2 種類の重要な違いがあります: 最初に、[すべての個別詳細] の配置は既定の設定ではなかった点です。もう 1 つは、[すべての個別詳細] 設定の構成はデータの収集後に行われていたため、この情報にアクセスするには、SQL クエリを使用するほかに方法がなかった点です。

ロード テストの結果リポジトリでタイミングの詳細データを格納するために必要なディスク容量が、長時間実行されるロード テストで特に大きくなります。また、ロード テストの終わりにこのデータをロード テストの結果リポジトリに格納するのに時間がかかります。これは、ロード テストの実行が完了するまでデータがロード テスト エージェントに格納されるためです。ロード テストが完了すると、データはリポジトリに格納されます。[タイミングの詳細ストレージ] プロパティは、既定では有効になっています。これがテスト環境で問題になる場合は、[タイミングの詳細ストレージ][なし] に設定します。

詳細については、「方法: ロード テストの実行設定の [タイミングの詳細ストレージ] プロパティを指定する」を参照してください。

SQL トレースの有効化を検討する

SQL パフォーマンスの問題を診断するために、ロード テスト エディターの実行設定にある一連のプロパティを使用して、Microsoft SQL Server の SQL トレース機能をロード テストの期間中有効にできます。SQL トレース機能を有効にすると、ロード テスト アナライザーのテーブル ビューで使用可能な [SQL トレース] テーブルに SQL トレース データを表示できます。

SQL トレースは使用方法が簡単で、ロード テストの実行中に SQL Profiler セッションを別途起動する代わりに利用できます。この機能を有効にするには、ロード テストを実行しているユーザーが SQL トレースの実行に必要な SQL 特権を持ち、トレース ファイルが書き込まれるディレクトリを指定する必要があります。通常、このディレクトリは共有です。ロード テストが完了すると、トレース ファイル データはロード テストの結果リポジトリにインポートされ、実行されたロード テストに関連付けられるので、後でロード テスト アナライザーを使用していつでも表示できます。

詳細については、「SQL トレース データの収集によるロード テストでのパフォーマンスの監視と向上」を参照してください。

テスト エージェントをオーバーロードしない。

テスト エージェント コンピューターによる CPU 使用率が 75% を超える場合、または使用可能な物理メモリが 10% を下回る場合は、ロード テストにエージェントを追加して、エージェント コンピューターがロード テストのボトルネックにならないようにしてください。

詳細については、「方法: ロード テスト シナリオで使用するテスト エージェントを指定する」および「テスト コントローラーおよびテスト エージェントを使用した複数のテスト コンピューターへのロード テストの実行の分散」を参照してください。

関連タスク

ロード テストと Web パフォーマンス テストの作成と編集

ロード テストや Web パフォーマンス テストを作成および編集する手順を紹介します。

Web パフォーマンス テストの実行

ロード テストで Web パフォーマンス テストを実行する方法について説明します。

外部リソース

ms184776.collapse_all(ja-jp,VS.110).gifガイダンス

Visual Studio 2012 – の章の 6 番目の一連の配信のためのテスト: ツールボックスのテスト

参照

概念

ロード テスト アナライザーの概要

その他の技術情報

ロード テストと Web パフォーマンス テストの実行

Considerations for Load Testing