レート・ジェネレーターは、仮想テスターが所定の期間に実行するタスクの数を指定するワークロード・コンテナーです。例えば、毎時 10 フォームを完了する注文入力グループをテストする場合があります。あるいは、毎分 100 ヒットをサポートできる Web ブラウザーをテストする場合があります。このような時間ベースの動作をモデル化するにはレート・ジェネレーターを使用します。
始める前に
スケジュールを作成して、ユーザー・グループに確実にテストを設定します。
このタスクについて
レート・ジェネレーターがターゲット・レートを満たさない場合は、アプリケーションにパフォーマンスの問題があるか、ターゲット・レートを満たすために必要な仮想ユーザーまたはエージェントが不足している可能性があります。すべてのレート・ジェネレーターは連係しています。つまり、同期ポイントが組み込まれており、すべての仮想テスターが共同でワークロードを生成します。レート・ジェネレーターは、スケジュール内のユーザー・グループ、または複合テストに追加できます。
レート・ジェネレーターに関するいくつかの重要なポイントを以下に示します。
- ループ、Finally、レート・ジェネレーター、トランザクションなどのエレメントをレート・ジェネレーターの親として設定することはできません。
- 同一のレート・ジェネレーター (名前で識別) が 1 つのスケジュール内の複数のユーザー・グループで出現することは可能です。
- レート・ジェネレーターを追加できるのは、パーセント・ユーザー・グループに対してのみです。レート・ジェネレーターを含むパーセント・ユーザー・グループを固定ユーザー・グループに変更することはできません。
手順
- 「テスト・ナビゲーター」ビューで、スケジュールをダブルクリックして開きます。
- ユーザー・グループを選択し、をクリックします。
- レート・ジェネレーターに名前を指定します。
- レート・ジェネレーターの期間を設定します。
- レート・ジェネレーターを実行する反復回数を指定するには、「カウント・ベース」を選択します。
- ジェネレーターを実行する最小時間を指定するには、「時間ベース」を選択します。
ジェネレーターは常に繰り返し分の最後まで実行されます。 例えば、時間として 1 秒を選択し、レート・ジェネレーターが実行に 10 秒を要した場合、ジェネレーターは 1 回の反復を終えてから時間をチェックします。
- 手動で停止するまで、または最後のスケジュール・ステージ期間の期限が切れるまでレート・ジェネレーターの実行を続けるには、「連続」を選択します。
- 「中断不能な反復」オプションにより、スケジュールの実行が停止した場合のレート・ジェネレーターの動作が変わります。このチェック・ボックスを選択すると、レート・ジェネレーターは現在の反復が完了するまで実行を続けます。反復が完了する前に、スケジュールの実行を停止させるタイムアウトが発生した場合、レート・ジェネレーターは停止します。
- レート・ジェネレーターのレート・タイプを設定します。
- スケジュール内のすべての仮想ユーザーがユーザー・ロードに関係なく目標のトランザクション・レートを維持できるようにするには、「全体レート」を選択します。
- スケジュールのステージで指定した仮想ユーザーの数に比例させてトランザクション・レートを調整するには、「ユーザー・レート」を選択します。例えば、1 分当たりの仮想ユーザー数が 100、200、300 の場合のワークロードを比較するには、その仮想ユーザー数でステージを設定します。ユーザー・レートは、ユーザー数が増減しても手動で追加されても、動的にステージに適応します。
- 「反復率」で、指定期間内にレート・ジェネレーターを実行する回数を指定します。
- 「差異」で、トランザクションが開始する範囲を決定するために使用するパーセント値を指定します。
例えば、トランザクション・レートが毎分 4 の場合 (15 秒ごとに 1 つのトランザクション) を考えてみます。差異として 20% を選択した場合、15 秒の 20% は 3 秒になるため、トランザクションの 15 秒の間隔の両側に 3 秒の枠が付加されます。したがって、最初のトランザクションは 12 秒から 18 秒に開始します。2 番目のトランザクションは、最初のトランザクションが開始してから 15 秒後 (+/-3 秒後) に開始します。最初のトランザクションが 12 秒に開始した場合、2 番目のトランザクションは 24 秒から 30 秒に開始することになります。ただし、最初のトランザクションが 18 秒に開始した場合、2 番目のトランザクションは 30 秒から 36 秒に開始することになります。
各トランザクションは指定した範囲内でランダムに開始されるため、通常、短期間で見れば、トランザクションの実行レートは、選択したレートより速くなったり遅くなったりします。例えば、ある 1 分間にトランザクションが 12 秒ごとに開始された場合、その最初の間隔でのレートは毎分 5 になり、毎分 4 という選択したレートとは異なります。しかし、時間が経つにつれ、トランザクション・レートは平均して 毎分 4 になります。
- 「配分」で、レート・ジェネレーターの実行頻度を指定します。
- レート・ジェネレーターのワークロードが厳密に指定のレートで発生するようにするには、「定数」を選択します。例えば、反復率が毎分 4 の場合、ワークロードは 15 秒、30 秒、45 秒、60 秒に開始します。つまり、正確に 15 秒ごとに同じ間隔で毎分 4 回開始します。
- 各ワークロードの間隔が一定でない場合は「一様」を選択します。
ただし、長時間で平均すれば、発生したワークロードは指定したレートになります。各ワークロードの開始間隔は、「差異」での指定に従って選択した範囲内で一様に分散するようにランダムに選択されます。
- ユーザーの典型的な振る舞いである、アクティビティーのピーク後にあまり活動のない期間が続く状態をエミュレートする場合は「負の指数」を選択します。したがって、レートが毎分 4 である場合、ワークロードがすぐに開始する確率は高いですが、時間が経過すると低下します。IBM® Rational® Performance Tester は、必要とされる平均レートを維持します。
- スケジュールを保存します。スケジュール実行が完了したら、パフォーマンス・レポートに加えて、レート・ジェネレーター・レポートが使用可能になります。