SharePoint 2010 アプリケーションの Web パフォーマンス テストおよびロード テスト

パフォーマンスを確認し、容量に重点を置く SharePoint アプリケーションの Web パフォーマンスとロード テストを使用できます。ロード テストでは、ユーザー ロードの場合、ブラウザーの種類やネットワークの種類などの条件をエミュレートするように構成できます。

要件

  • 次ので Web パフォーマンス テストおよびロード テストを作成し、実行、および管理できますか。
    [web performance and load tests] は Visual Studio Ultimateに含まれている Web パフォーマンス テストおよびロード テストのプロジェクトの種類を使用して管理されます。

このトピックの内容

  • はなぜ SharePoint の[アプリケーションの Web パフォーマンスとロード テストを実行しますか。

  • Web パフォーマンス テストを作成し、SharePoint 2010 のタスクの追加を記録するために実行します

  • Web パフォーマンス テストの作成時に何が発生したか。

  • SharePoint Web パフォーマンス テストを記録するための Visual Studio の構成の選択

  • SharePoint のアプリケーションが検証規則、を使用してデータの検証によって正しく動作することを確認します。

  • SharePoint のアプリケーションが抽出規則、を使用して Web 要求からデータを抽出して正しく動作することを確認します。

  • ロード テストを使用して SharePoint アプリケーションをテストするストレス

  • Web パフォーマンス テストおよびロード テストの結果の分析

  • SharePoint アプリケーションのトラブルシューティング Web パフォーマンス テスト

はなぜ SharePoint の[アプリケーションの Web パフォーマンスとロード テストを実行しますか。

Web パフォーマンス テストおよびロード テストは、SharePoint アプリケーションの機能、パフォーマンスとストレスの機能を確認するために使用できます。SharePoint の Web パフォーマンス テストおよびロードが、アプリケーションが一連の配信方法を使用すると、チームのアプリケーション ライフサイクル管理プロセスをアップグレードし、大切です。

詳細については、Visual Studio 2012 を使用した一連の出荷時のテスト" "を参照してください。

  • Web パフォーマンス テスト

    Web パフォーマンス テストは、SharePoint アプリケーションに対して記録され、次にし、分析することができます。たとえば、SharePoint アプリケーションに対して次の操作を行う Web パフォーマンス テストを作成できます:

    • サイトのレンダリング

    • ドキュメント ライブラリの操作

    • タスク、予定表、ライブラリの操作

    • 検索の内容

    • Wikis

    • カスタマイズされた Web パーツ

    • ワークフロー

    • リボンからの複数の操作

    • 複数のサイトとリストに対するテストを実行できます。

  • ロード テスト

    ストレス テストに高いユーザー ロード、相違点のネットワーク トポロジおよび他の条件をシミュレートする SharePoint Web アプリケーション、SharePoint の Web パフォーマンス テストを使用するロード テストを作成できます。

  • 他には My 内容を知る必要があるか。
    説明

    • 必須コンポーネント SharePoint アプリケーションの Web パフォーマンス テストは、SharePoint 2010 でのみサポートされます。

    • 必須コンポーネントコード化された Web パフォーマンス テスト は、SharePoint アプリケーションではサポートされません。

      コード化された Web パフォーマンス テストは、既存のコードに記録された Web パフォーマンス テストに変換する場合によく使用されます。コード化された Web パフォーマンス テストは、一連の WebTestRequest を生成する .NET クラスです。これは、C# または Visual Basic を使用してプログラミングできます。

Web パフォーマンス テストを作成し、SharePoint 2010 のタスクの追加を記録するために実行します

[!メモ]

この手順では、一般的な 2010 の SharePoint サイト http://SP2010、および SampleSite という名前のサブ サイトがあると仮定しています。SharePoint [サイト アクション] のドロップダウン リストから [新しいサイト] を選択すると、補助的なサイトを作成できます。

  1. 新しい Web パフォーマンス テストおよびロード テスト プロジェクトを作成します。次に Visual Studio Ultimate で、メニューの [ファイル][新規作成]プロジェクトを選択します。[Visual C#][Visual Basic] を展開し、[テスト] を選択します。[Web パフォーマンスとロード テストのプロジェクト] を選択し、[OK] を選択します。

  2. 空白テストで Web パフォーマンス テスト エディターに表示されます。テストを記録するには、[記録の追加] のボタンをクリックします。

    記録の追加

  3. 新しい空の Web ブラウザーのウィンドウは左側の Web テスト レコーダーのパネルに表示されます。ブラウザーのアドレス バーに SharePoint サイトの名前を入力します。Visual Studio Ultimate は、Web テスト レコーダーのパネルの URL を記録し、示します。

    Web パフォーマンス テスト レコーダー

  4. Sub の SharePoint サイト SampleSite に移動し、サイトのタスク リストに新しい項目を追加するには、次の手順を実行する:

    1. SharePoint サイトの上端から [SampleSite] を選択します。

      SampleSite の選択

    2. 左側で、メニューの [タスク] を選択します。

      タスクの選択

      SampleSite > タスク: すべてのタスク のページが表示されます。

    3. リストに新しいタスクを追加するには、[新しい項目の追加] のリンクを選択します。

      新しい項目の追加

      [Tasks - New Item] のダイアログ ボックスが表示されます。唯一の必須フィールドは [タイトル] であり、入力値は重要ではありません。ダイアログ ボックスの情報を完了し、[保存] を選択します。

      新しいタスク アイテムの作成

    4. これで、前の手順で追加した新しいタスクを一覧表示は、WebBrowser にSampleSite > タスク: すべてのタスクを返します。

      追加された新しいタスク

    5. 記録を終了するには、Web テスト レコーダーのパネルの [停止] を選択します。

      [動的パラメーター] の検出のダイアログ ボックスが表示されます。これは検出の進行状況を示します。これは、完了するために、短いの間だけを取得する。

      動的パラメーターの検出

      Visual Studio Ultimate は、新しく作成された Web パフォーマンス テストは、Web テスト エディターに返します。

      Web テスト エディター

  5. テストが正しく実行されていることを確認するには、最初に既存の項目の一覧を表示するように SharePoint サイトを閲覧する:

    http://sp2010/SampleSite/Lists/Tasks/AllItems.aspx

  6. Visual Studio Ultimate に戻り、Web パフォーマンス テスト エディターの [テストの実行] のボタンをクリックします。SharePoint のタスク リストに新しい項目を追加するときに記録された操作を実行するテストが実行されます。

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

  7. SharePoint サイトを使用して、ブラウザー ウィンドウの更新を選択すると、リストに追加する新しいタスク項目が表示されます。

Web パフォーマンス テストの作成時に何が発生したか。

いる Web サイトおよびアプリケーションは Web 要求の一つ以上で [動的パラメーター] を使用します。動的パラメーターとは、ユーザーがアプリケーションを実行するたびに値が生成されるパラメーターです。動的な値がテストが実行されるたびに異なる可能性があるため、動的パラメーターは、Web パフォーマンス テストの再生に失敗することがあります。このため、記録された値を再生できません。動的パラメーターの例として、セッション ID があります。通常、この値を使用して 5 ~ 30 分の間隔で変更される値を取得します。

SharePoint サイトに記録された Web パフォーマンス テストは、SharePoint で使用される要求と応答ファイル形式の動的な特性に洗練されています。Web パフォーマンス テストの記録と再生が一つの項目またはサイトで作業する場合でも、テストが複数の SharePoint サイトまたはサーバー間で動作するように、Web パフォーマンス テストへの変更の多くが必要です。SharePoint サイトへの各要求が 30 の個々のリビジョンに動的 GUID と他の要素に対応するように要求できます。

Web パフォーマンス テスト レコーダーと再生エンジンは自動的に動的パラメーターの共通の型を処理します:

  • 動的パラメーターの値は、クッキー値で設定されます。Web パフォーマンス テスト エンジンは、再生中に自動的にこれらを処理します。

  • 動的パラメーターの値は、ASP.NET ビューステートなどの HTML ページ上の隠しフィールドで設定されます。これらの値は、隠しフィールドの抽出ルールをテストに追加するレコーダーによって自動的に処理されます。

  • 動的パラメーターの値は、クエリ文字列またはフォーム ポスト パラメーターとして設定されます。これらの値は、テストの完了時に動的パラメーターの検出によって処理されます。

  • SharePoint の GUID の変換

  • SharePoint LISTID、ID、およびそのほかのクエリ文字列パラメーター

  • SharePoint の抽出規則が適用されていないヘッダーを作成します。

  • 可能な動的パラメーターの警告を作成します。

動的パラメーターに加えて、Visual Studio Ultimate は、SharePoint アプリケーションの Web パフォーマンス テストの記録の次のアクションを実行します:

  • 不要な要求の削除

  • サイトの名前とパラメーターの検出

  • エラーのグローバル検証規則

JJ710162.collapse_all(ja-jp,VS.110).gifSharePoint の GUID の変換

SharePoint は、一意の GUID を使用して、これらのテストが別の SharePoint サイトで実行されると予測される場合、GUID で、動的パラメーターとして処理される必要があります。たとえば、一つの要求では、要求の動的 GUID を処理する必要がある 30 したり、より多くの場所を指定する必要があります。このさらに複雑に何がありませんが、GUID、は要求の他の部分で同様に表示されますが、フォーム ポストの部分に要求値:

  • ポストの名前フィールドの動的 GUIDS

  • フォーム ポスト パラメーターの値に含まれる GUID

    に何がこの複合体は、GUID が別の動的パラメーターの内部にあることです。Visual Studio Ultimate は自動的にこの条件を検出し、必要に応じて新しい抽出規則をこの条件を処理します。

  • _EVENTARGET のフィールドの動的 GUID

  • これは、GUID ではありませんが、の処理する必要がある要求でサイトの名前を持つ例を示します。

JJ710162.collapse_all(ja-jp,VS.110).gifSharePoint ListID、ID、およびそのほかのクエリ文字列パラメーター

GUID に加えて、SharePoint のテストが処理する必要がある ListIDs などの多くの動的値を含みます。Visual Studio Ultimate は、必要な抽出規則を追加し、テストをすべての生成を置き換えるために検索します。

ID は、タスクを表示するときに表示するアイテムを選択するときに使用されます。

特定のユース ケースによって、記録中に選択した特定のテーブルの代わりにオプション項目を選択する場合があります。このタスクを簡単にするためには、Visual Studio Ultimate は、抽出規則 SharePoint –検索リスト項目 IDを使用して ID を検出します。Visual Studio Ultimate が抽出規則のリスト項目 ID を検索 Visual Studio Ultimate は ID のコンテキスト パラメーターを作成し、ID が検出されているすべての領域を置き換える前方向に検索されます。

項目 ID に対して動的な値を使用する場合、このプロセスを簡略化する抽出規則を使用できます。

JJ710162.collapse_all(ja-jp,VS.110).gif不要な要求の削除

SharePoint は、一部が不要なノイズである多くの要求が生成されます。たとえば、blank.gif のコア操作の処理に必要ない要求など、キャッシュされた URL に対する要求が生成されます。これにより、スクリプトを操作することはできません。テスト目標がこれらの要求を、bandwidth/WAN のテストと同様に要求する、テストから安全にこれらの要求を削除できます。

ヒントヒント

[要求のフィルター一覧は SharePoint Web パフォーマンス テストを記録するための構成の選択によって変わることができます。

JJ710162.collapse_all(ja-jp,VS.110).gifサイトの名前とパラメーターの検出

文字列をパラメーター化するには、Web パフォーマンス テストで使用するように コンテキスト パラメーター を作成できます。たとえば、Web サイトのコンテキスト パラメーターを作成できます。コンテキスト パラメーターを使用することにより、テスト対象のサイトをすばやく切り替えることができます。Visual Studio Ultimate は、SharePoint サイトを追加し、検出された各サイトの名前のコンテキスト パラメーターを検索します。また、URL の名前と、クエリ文字列またはフォーム ポスト、サイトの名前が発生する可能性がある文字列ボディの要求などの他の領域のすべての一致を置き換えます。

サイトが存在するの名前を持ち、URL でエンコードされたファイル形式の条件が必要です。Visual Studio Ultimateはパラメーターの数を最小限に抑えるように URL エンコーディングを使用して最初はを決定します。それでもエラーが値をエンコードする URL である必要があることを示すために、追加のサイト名が追加されます。独自の SharePoint サイトの名前に空白またはそのほかの特殊文字を使用すると、このエラーが発生します。

ヒントヒント

SharePoint Web パフォーマンス テストを記録するための Visual Studio のオプションを構成します。 サイトの名前で、パラメーターを指定できます。

JJ710162.collapse_all(ja-jp,VS.110).gifエラーのグローバル検証規則

多くの場合、SharePoint が成功の http (ステータス コード 200) を返しますが、要求は実際には失敗します。実際には、エラー状態のために失敗した場合、テストが正常に動作していると思い込みますできます。これらの条件を検出し、失敗した要求に警告役立つ Web テストのレベル 検証規則 が追加されます。

検証規則の使用方法の詳細については、このトピックの SharePoint のアプリケーションが検証規則、を使用してデータの検証によって正しく動作することを確認します。 を参照してください。

ヒントヒント

SharePoint Web パフォーマンス テストを記録するための Visual Studio の構成の選択 エラーのグローバルな検証を含めることができます。

JJ710162.collapse_all(ja-jp,VS.110).gifSharePoint の抽出規則が適用されていないヘッダーを作成します。

場合によっては、SharePoint 2010 では x-requestdigest などの特定のヘッダー値が必要です。これらの値が存在しない場合、要求は、セキュリティなどのエラーで失敗します。Visual Studio Ultimate にこれらのヘッダーを記録し、動的にこれらの値を更新するには 抽出規則 を作成できます。

抽出規則の使用方法の詳細については、このトピックの SharePoint のアプリケーションが抽出規則、を使用して Web 要求からデータを抽出して正しく動作することを確認します。 を参照してください。

SharePoint Web パフォーマンス テストを記録するための構成の選択

  1. Visual Studio Ultimate で、メニューの [TOOLS] を選択し、[オプション] を選択します。

  2. 次に [Web パフォーマンス テスト ツール] を展開し、[Web テスト] を展開し、SharePointを選択します。

SharePoint に関する Web テスト用の Visual Studio オプション

Visual Studio Ultimate の選択ダイアログ ボックスを開くと、SharePoint アプリケーションで Web パフォーマンス テストの次のオプションを構成できます:

  1. SharePoint の Web パフォーマンス テストおよびロードを有効または無効にします。

  2. 自分やチームが指定されている条件に基づいて、テストの不要なノイズを考慮する可能性がある要求を除外します。ノイズを回避するには、次の URL の基準とパターンは既定でフィルター処理します。チームでテストの各パターンに含める必要がある場合は、一覧からそれらを削除できます。

    既定のフィルター

    URL の条件

    URL パターン

    端に対する

    Blank.gif

    端に対する

    Blank.htm

    端に対する

    ScriptResx.ashx

    端に対する

    Commandui.ashx

  3. 自分やチームは、コンテキスト パラメーターを使用してサイトの名前をパラメーター化できます。コンテキスト パラメーターは Web パフォーマンス テストの文字列をパラメーター化できます。この構成オプションに 1 個のサイト間でテストの変更をすぐにできます。既定では、コンテキスト パラメーターは "SiteName" です。

  4. 一般的なエラーのパターンに対するグローバルな検証規則を適用します。これは、エラーを応答に [ErrorPattern] に対して入力したテキストが SharePoint サーバーから HTTP 応答に存在する検証によって発生したかどうかの検出できます。[ErrorPattern] で区切り記号をセミコロンで区切りますによって複数のエラーのパターンにを入力できます (;)。[ErrorPattern] に対して入力した一つ以上の文字列が応答に存在する場合、Web パフォーマンス テストでエラーが発生した HTTP 応答により、Web パフォーマンス テストを失敗します。既定では [ErrorPattern]、次のエラー文字列が含まれています: \[{"Error":[^n];"SharepointError";"HasException":true。これらの既定のエラー文字列は、チームが要求するように、削除、または編集できます。

  5. エラー文字列が正規表現としてランダムに入力できます。

SharePoint のアプリケーションが検証規則、を使用してデータの検証によって正しく動作することを確認します。

検証規則 のヘルプには、で SharePoint アプリケーションが Web 要求によって返されるページ上のテキスト、タグ、または属性の存在を検証することにより、正しく動作することを確認します。検証規則では、要求の完了までにかかる時間の検証や、フォーム フィールドとその値の存在の検証も行うことができます。

SharePoint アプリケーションに使用するものを含む検証規則の一覧については 定義済みの検証規則を参照してください。

SharePoint のアプリケーションが抽出規則、を使用して Web 要求からデータを抽出して正しく動作することを確認します。

抽出規則 で、SharePoint のアプリケーションが応答から Web 要求にへのデータを抽出して正しく動作することを確認します。抽出ルールは、テスト コンテキストでの結果を名前と値のペアとして格納します。抽出ルールでは、フォーム フィールド、テキスト、属性、ヘッダー、正規表現、および隠しフィールドを抽出できます。

SharePoint の抽出規則の一覧については、SharePoint Apps の定義済みの抽出ルール"を参照してください。

ロード テストを使用して SharePoint アプリケーションをテストするストレス

SharePoint の Web パフォーマンス テストを作成したら、アプリケーションのパフォーマンスをテストし、容量に重点を設定するロード テストを作成できます。ロード テストの作成には新しいロード テスト ウィザードを使用します。ウィザードを使用すると、の SharePoint アプリケーションのパフォーマンスをテストし、容量にストレスをかけるを構成できます。

ウィザードを使用したロード テストの作成

[ソリューション エクスプローラー] では、Web パフォーマンス テストおよびロード テスト プロジェクトのノードを右クリックし、[追加] を選択し、を [ロード テスト] を選択します。

ウィザードは新しいロード テストに構成オプションも用意されています:

  • ロード パターン: これらがテスト中に追加される割合、ロード テスト中にアクティブである仮想ユーザーの数。

  • テスト ミックス モデル: ロード テスト シナリオの指定のテストを実行する仮想ユーザーの確率。

  • テスト ミックス: Web パフォーマンス テスト、単体テストおよびロード テストに含まれるコード化された UI テストの組み合わせ。

  • ネットワーク ミックス: テストで使用されるネットワークの種類。たとえば、LAN とダイヤルアップ 56K。

  • ブラウザー ミックス: ロード テストで使用される Web ブラウザーの種類。たとえば、Windows Internet Explorer 9 と Windows Internet Explorer 10。

  • カウンター セット: カウンター セットは、ロード テスト時に状況を監視するのに役立つ一連のシステム パフォーマンス カウンターです。カウンター セットは、たとえば ASP.NET カウンター セット、SQL カウンター セットなど、テクノロジ単位に整理されています。

    [!メモ]

    定義済みのパフォーマンス カウンター セット は、ロード テストでが SharePoint で使用できない使用しました。

  • 実行設定 の実行設定は、テストの長さ、報告されるエラー詳細のウォームアップ期間、最大数、サンプリング レートなどのロード テストのプロパティを決定します。

ロード テスト エディター でロード テストが実行されます、または [ロード テスト] のメニュー。

ロード テストの実行

Web パフォーマンス テストおよびロード テストの結果の分析

[Web Performance Test Results Viewer] はこれらの要求への Web パフォーマンス テストと結果応答の詳細を表示できるようにします。Web パフォーマンス テスト結果ビューアーでは、ツリー ビューを使用して、要求および入れ子になった依存要求がトップ レベルの要求の下に表示されます。ツリーにはページ リダイレクトも表示されます。

また、アプリケーションのメジャー アップグレードのボトルネックを特定したり、エラーを見つけたりに [ロード テスト アナライザー] を使用できます。ロード テスト アナライザーを使用して、次の方法でロード テスト結果を分析できます。

  • 実行中にロード テストを監視する。

  • 完了後にロード テストを分析する。

  • 以前のロード テストの結果を表示する。

SharePoint アプリケーションのトラブルシューティング Web パフォーマンス テスト

Caution メモ注意

コード化された Web パフォーマンス テストは、SharePoint アプリケーションではサポートされません。

JJ710162.collapse_all(ja-jp,VS.110).gif追加の指定は、会議を作成して選択されたワークスペースのオプションが失敗する

これは、新しいサイトがワークスペースに作成され、SharePoint で 動的パラメーター の検出中に同じ名前を持つサイトを作成しようとしているので失敗します。

:回避策 の更新はフォーム ポストのパラメーターの会議のタイトルの参照の会議を作成し、一意会議のタイトルを使用するたび会議のワークスペース Web 要求を Web パフォーマンス テストの再生作成します。新しいサイトが会議のタイトルを使用して作成されるたびに、一意のようになります。それ以外の場合は、ワークスペースの要求は失敗します作成します。

JJ710162.collapse_all(ja-jp,VS.110).gifドキュメントのアップロードは、Web パフォーマンス テストがテスト プロジェクトのルート フォルダー以外の別のフォルダーに追加すると失敗します

ドキュメントのアップロード Web パフォーマンス テストが別のフォルダーに、明示的に追加**:回避策** は、テストの設定で配置の項目と同じドキュメントを指定します。

または

別のフォルダーに作成する代わりに、レベル Web パフォーマンス テストおよびロード テスト プロジェクトのルートで Web パフォーマンス テストを作成します。

JJ710162.collapse_all(ja-jp,VS.110).gifSharePoint の削除操作

タスク、予定表のスケジュール、またはドキュメント、および削除する Web パフォーマンス テストを記録している場合は、テストを実行してください。対応するタスク、予定またはドキュメントが既に削除されているので失敗します。

:回避策 を使用 コンテキスト パラメーターに目的のリスト項目の GUID を抽出 [SharePoint2010.FindListItems] の抽出ルール。タイトルの名前とインデックス番号に基づいて選択をフィルター処理できます。と [削除] の後続の要求パラメーターを渡します。

または

前の要求の応答から目的の項目の GUID を抽出し、削除された要求に渡す要求プラグインを使用します。

外部リソース

JJ710162.collapse_all(ja-jp,VS.110).gifビデオ

Visual Studio 2012.1 で SharePoint のロード テストの概要レポートおよびストーリーの搭乗

SharePoint アプリケーションのロード テストに Visual Studio 2012.1 を使用する方法

参照

概念

Visual Studio の Web パフォーマンス テストとロード テストを使用したパフォーマンスおよびストレスのテスト

コード化された UI テストを使用した SharePoint 2010 アプリケーションのテスト

SharePoint コードの検証およびデバッグ

その他の技術情報

Visual Studio での SharePoint 開発

SharePoint ソリューションのビルドとデバッグ

SharePoint アプリケーションのパフォーマンスのプロファイリング