負荷テストとストレステストの違いは何ですか?
負荷テストとストレステストの違いは何ですか?
回答:
負荷テストに関するウィキペディア(太字は私のものです):
[...]負荷テストは通常、特定の条件下でのシステムの動作を理解するために実施されます 予想される負荷のされます。この負荷は、設定された期間内に特定の数のトランザクションを実行するアプリケーションの予想される同時ユーザー数である可能性があります。このテストは、すべての重要なビジネスクリティカルなトランザクションの応答時間を示します。[...]
と ストレステストについて:
システム内の容量の上限を理解します。この種のテストは、極端な負荷に関するシステムの堅牢性を判断するために行われ、アプリケーション管理者が、現在の負荷が予想される最大値を大幅に上回った場合にシステムが十分に機能するかどうかを判断するのに役立ちます。
つまり、要点は次のとおりです。通常の予想負荷をテストしている場合(システムは一度に最大100人のユーザーによって使用されることがわかっています)、これは負荷テストです。しかし、極端な負荷(DoS、スラッシュドット効果)の下でシステムがどのように動作するかを判断したい場合、およびシステムが壊れた場合、これはストレステストです。
「ストレステスト」と「負荷テスト」という用語は、ソフトウェアテストエンジニアによって同じ意味で使用されることがよくありますが、実際にはまったく異なります。
ストレステスト
ストレステストでは、リソースを圧倒するか、リソースを奪うことで、テスト対象のシステムを破壊しようとします(この場合、ネガティブテストと呼ばれることもあります)。この狂気の背後にある主な目的は、システムに障害が発生し、正常に回復することを確認することです-この品質は、。回復可能ます。 またはストレステストは、テスト対象のプログラム/システム(SUT)にリソースを削減し、標準の機能テストを実行してSUTの動作を調べるプロセスです。これは、通常の状態では発生しない問題を明らかにすることを目的としています。たとえば、マルチスレッドプログラムは通常の状態では正常に動作しますが、CPUの可用性が低下している状態では、タイミングの問題が異なり、SUTがクラッシュします。ストレステストで削減される最も一般的なタイプのシステムリソースは、CPU、内部メモリ、および外部ディスクスペースです。ストレステストを実行するときは、これら3つのリソースをそれぞれEatCPU、EatMem、およびEatDiskに削減するツールを呼び出すのが一般的です。
一方、負荷テスト中
の場合には 負荷テストの負荷テストは、通常、複数のユーザーをシミュレートすることによって(ロードランナーを使用して)、SUTに重い負荷をかけるプロセスです。ここで、「ユーザー」は、人間のユーザーまたは仮想/プログラムユーザーを意味します。負荷テストの最も一般的な例は、Webベースまたはネットワークベースのアプリケーションを数千人のユーザーによる同時ヒットにさらすことです。これは通常、ユーザーをシミュレートするプログラムによって実行されます。負荷テストには、主に2つの目的があります。SUTのパフォーマンス特性を判断することと、SUTが正常に「破損」するかどうかを判断することです。
Webサイトの場合、負荷テストを使用して、システムが処理でき、十分なパフォーマンスを維持できるユーザーの数を判別し、極端な負荷で何が起こるかを判別します。Webサイトは「ビジーすぎる」メッセージを生成します。ユーザー、またはWebサーバーが炎上してクラッシュしますか?
負荷テスト: 負荷テストは、しきい値の制限に達するまでシステムの負荷を絶えず着実に増加させることによってシステムをテストすることを目的としています。
例 たとえば、アプリケーションの電子メール機能を確認するために、一度に1000人のユーザーで溢れる可能性があります。現在、1000人のユーザーがさまざまな方法で電子メールトランザクション(読み取り、送信、削除、転送、返信)を実行できます。ユーザーごとに1時間に1つのトランザクションを実行すると、1時間に1000トランザクションになります。ユーザーあたり10トランザクションをシミュレートすることにより、1時間あたり10000トランザクションで占有することにより、電子メールサーバーの負荷テストを行うことができます。
ストレステスト: ストレステストでは、システムを破壊するために、既存のリソースを過剰なジョブで過負荷にするさまざまなアクティビティが実行されます。
例: として、OpenOffice.orgのWriter1.1.0のようなワードプロセッサは、文字、プレゼンテーション、スプレッドシートなどの開発に使用されます。ストレステストの目的は、過剰な文字をロードすることです。
これを行うには、大量のテキストを処理するしきい値の制限に達するまで、データの行を繰り返し貼り付けます。文字サイズが65,535文字に達するとすぐに、それ以上のデータの受け入れを拒否します。Writer 1.1.0でのストレステストの結果は、ストレス下でクラッシュせず、状況を適切に処理するという結果を生成します。これにより、厳しいストレス条件下でもアプリケーションが正しく機能することが確認されます。
->ユーザーと入力の最大数でアプリをテストすることは、負荷テストとして定義されます。最大数を超えるユーザーと入力でアプリをテストしている間、ストレステストとして定義されます。
->負荷テストでは、ユーザー数に基づいてシステムパフォーマンスを測定します。ストレステストでは、システムのブレークポイントを測定します。
->負荷テストは、次の基準のいずれかを含む可能性のある特定の負荷要件についてアプリケーションをテストしています。
.Total number of users.
.Response Time
.Through Put
サーバー/アプリケーションの状態をチェックするためのいくつかのパラメーター。
->ストレステストが予期しない負荷についてアプリケーションをテストしている間。含まれています
.Vusers
.Think-Time
例:
アプリが500ユーザー向けにビルドされている場合、負荷テストの場合は最大500ユーザーをチェックし、ストレステストの場合は500を超えるユーザーをチェックします。
負荷テスト:-負荷テストは、しきい値制限に達するまでシステムの負荷を絶えず着実に増加させることによってシステムをテストすることを目的としています。
ストレステスト:-ストレステストでは、システムを破壊するために、既存のリソースを過剰なジョブで過負荷にするさまざまなアクティビティが実行されます。
基本的な違いは以下の通りです
負荷テスト:大量のユーザー ストレステスト:ユーザーが多すぎる、データが多すぎる、時間が少なすぎる、スペースが少なすぎる
負荷-最大負荷でS / Wをテストします。応力-S / Wの負荷を超えています。またはs / wの破壊点を決定します。