スケジュールにループを追加することによって、何度もテストを繰り返し、テスト実行の頻度を設定することができます。 ループに同期ポイントが含まれている場合、その同期ポイントは最初のループ反復後に解放され、以降のすべての反復で解放されたままになります。
このタスクについて
ユーザー・グループとテストのみを含むスケジュールは、ユーザー・グループごとに各テストを順番に実行します。 ループを使用すれば、単に一連のテストを順番に実行するよりも高度なコントロール機能が得られます。
スケジュールまたはテストの内部にループを設定できます。 次の表に、両者の方法の利点を示します。
ループ・ロケーション |
結果 |
スケジュール |
スケジュール内のループは、見つけたり変更したりするのが容易です。 スケジュール内のループは、各反復の終わりにサーバー接続を閉じ、次の反復が開始されるときに再びサーバー接続を開きます。 このアクションは、ユーザーがブラウザーを閉じ、再び開く動作をモデルにしています。
設定した反復率でテストを実行する場合は、このメソッドを使用します。 詳しくは、『設定した頻度でテストを実行』を参照してください。
|
テスト |
テスト内のループは粒度を上げて、コントロールのレベルを上げることができます。 テスト内のループは、各ループの反復でサーバー接続を再利用します。
サーバーのストレス・テストを行うには、反復カウントの高いループでこのメソッドを使用します。
|
手順
スケジュールにループを追加するには:
- テスト・ナビゲーターで、スケジュールをブラウズし、ダブルクリックします。 スケジュールが開きます。
- ループの親になる項目をクリックして、をクリックします。
- 「スケジュール・エレメント詳細」エリアに、ループを繰り返す反復回数を入力します。
オプション |
説明 |
カウント・ベース |
選択した繰り返し回数だけ実行します。 |
時間ベース |
指定した時間以上実行します。 ループは常に繰り返し分の最後まで実行されます。 例えば、ループの実行に 10 秒かかるにもかかわらず 1 秒を選択した場合、ループを 1 回だけ実行した後で時間がチェックされます。 |
連続 |
スケジュール期間が終了するまで実行します。一定期間パフォーマンス・データを収集するためには、このオプションを使用します。無限ループを設定してから、一定時間の経過後にスケジュールが停止するように設定します。 |
- 設定されたトランザクション頻度を、ループの子であるすべてのスケジュール項目で維持するには:
- 「反復の頻度の制御」を選択します。
- 「反復率」フィールドに数値を入力して、時間単位を選択します。 これで、実際の反復率が設定されます。
- 「反復の間の遅延をランダムに変更」チェック・ボックスを選択またはクリアします。 このチェック・ボックスを選択すると、遅延がきめ細かく変更されます。 このオプションにより、繰り返しが一定期間内にランダムに分散しているため、ユーザーがより正確にモデリングされます。
注: 統計的には、「反復の間の遅延をランダムに変更」オプションでは、固定された遅延値と平均が同じ負の指数分布からランダムに遅延を設定します。 負の指数分布は長い「テール (尾)」を持ちます。これは、極めて少数の遅延が非常に大きな値を持つということを意味します。 したがって、テスト対象のアプリケーションが、長時間の非アクティブ状態によって悪い影響 (ユーザーを切断するタイムアウトなど) を受けないか確認してください。
- 「ループの最初の反復の前に遅延」チェック・ボックスを選択またはクリアします。 このチェック・ボックスを選択すると、反復のたびに最初の遅延が食い違い状になるため、最初の反復で現実的な混合が可能になります。
例
以下のスケジュールにはループが 2 つ含まれています。 ループによって制御されるブラウズおよびビッドのテストはループの子である必要があります。