パフォーマンス要件の観点からプロジェクトのニーズに合わせてそのまま使用することも、変更することもできるパフォーマンステスト計画テンプレート。
このセクションの目的は、で従う必要のあるパフォーマンステストアプローチの概要を説明することです。事業。これは、関連するすべての利害関係者に提示する必要があり、コンセンサスを得るために話し合う必要があります。
の提供の一環として、ソリューションが機能領域と非機能領域の両方の点で受け入れ基準を満たしている必要があります。このドキュメントの目的は、
の非機能テストの概要を提供することです。解決。
このドキュメントの内容は次のとおりです。
実際のパフォーマンステストアクティビティを続行するには、次の作業項目を事前に完了/合意する必要があります。
によって提供される非機能テスト要件ドキュメント、可能な場合は定量化されたNFR
で作成された適切な数のユーザーパフォーマンステストアクティビティは、次の場合に完了します。
パフォーマンステストは、の安定バージョンに対して実行されます。ソリューション(すでに機能テストに合格しています)は、パフォーマンステストの過程でその環境に展開せずに、パフォーマンステストに割り当てられた専用の本番環境のような環境(製品前?)で実行されます。
パフォーマンステストに必要な負荷を開始するために、1つ以上の専用の「ロードインジェクター」がセットアップされます。ロードインジェクターは、JMeterのインスタンスが実行されているVMまたは複数のVMであり、要求を開始します。
ボリュームテストとパフォーマンステストに使用されるテストツールは次のとおりです。
オープンソースの負荷テストツール。主にボリュームとパフォーマンスのテストに使用されます。
Splunkはロギングに使用されます(別のツールを使用できます-パフォーマンステストチームに確認する必要があります)。
ソリューションは、次の負荷基準を管理するのに十分なパフォーマンスを備えている必要があります。
N.B.次の表の数値はサンプルのみです。実際の値は、で確定したら挿入する必要があります。 NFRドキュメント。
[Y2019]の現在のソリューションから、1時間ごとのターゲットが検出されます。プランテンプレートから他の「例」の値をクリアしました。
時間ごとのピーク値は高くないため、固定負荷テストの対象とします。現在、スケーリング係数は未定です。
パフォーマンステストは、最大1000 [?]ユーザーで実行されます。ユーザーはで作成されます事前に
からアクセスできますログインAPI。各リクエストは異なるユーザーIDでログインします。
JMeterツールは、パフォーマンステストスクリプトを実行するために使用されます。スクリプト内には、上記のメトリックをチェックするためのアサーションと、各要求に対して正しい応答が受信されることを確認するためのいくつかの基本的な機能チェックがあります。
負荷プロファイルは、への一般的な1日のトラフィックを模倣するように設計する必要があります。地点。トラフィックは、サイトの顧客IDおよびアクセス管理部分にのみ割り当てられ、制限されることに注意してください。
以下は、1日のプロファイルの例です。
最初の行動方針は、ベースラインを見つけることです。 1人のユーザーのみを使用して、一定期間(5分など)シミュレーションを実行し、各エンドポイントの平均応答時間を取得します。これにより、1人のユーザーだけで、実際に1秒あたりのピークリクエストを達成できるようになります。
ベースラインメトリックが収集された後、負荷プロファイルをシミュレートする同じシミュレーションが、ターゲットボリュームに対してテストするために、より多くのユーザーで実行されます。この負荷テストのアイデアは、典型的な1日の負荷に対してシステムをテストし、ランプアップ、1日のピーク、およびランプダウンをシミュレートすることです。
ストレステストの目的は、システムのブレークポイント、つまりシステムが応答しなくなるポイントを見つけることです。自動スケーリングが実施されている場合、ストレステストは、システムがスケーリングされ、新しいリソースが追加される時点での優れた指標にもなります。ストレステストでは、負荷テストに使用されたものと同じシミュレーションが使用されますが、予想よりも高い負荷がかかります。
スパイクテストは、比較的短時間でシステムに大きな負荷をかけます。このテストの目的は、たとえば、多数のユーザーが比較的短時間でアカウントに同時にアクセスする場合の販売イベントをシミュレートすることです。
ソークテストは、長期間にわたって負荷テストを実行します。目的は、ソークテストの過程でメモリリークや無応答またはエラーを明らかにすることです。通常、負荷の80%(負荷テストに使用)を24時間使用するか、負荷の60%を48時間使用します。
飽和点テストでは、負荷を着実に増加させて、システムが応答しなくなるポイントを特定します。つまり、負荷の観点からシステムのブレークポイントを見つけます。
パフォーマンステストを完了するために、次のアクティビティを実行することをお勧めします。
次のテストは、次の順序で実行する必要があります。
理想的には、各テストタイプの2つのテスト実行が実行されます。各テストの実行後、パフォーマンスを向上させるためにアプリケーションを微調整してから、別のテストサイクルを開始する場合があります。