誰でも仮想ユーザーと実際のユーザーの違いを指摘できますか?
3 に答える
Web負荷テストのコンテキストでは、多くの違いがあります。仮想ユーザーは、ブラウザーを使用してWebサイトでいくつかのアクションを実行する人間のシミュレーションです。ある会社は彼らが「実際のブラウザユーザー」と呼ぶものを提供していますが、彼らもまたシミュレーションです-ちょうど異なる層(ブラウザとHTTP)で。人間を指すのに「実際のユーザー」を使用していると仮定します。
人間を使用して負荷テストを実施することにはいくつかの利点がありますが、困難が伴います。主な利点は、実際のブラウザを使用している実際の人間がいることです。つまり、スクリプトを正確に実行している場合、シミュレーションと実際のトラフィックの間に実質的な違いはありません。ただし、問題のリストは長いです。まず、それは高価です。このプロセスは、限られた数の場所で数十人のユーザーを超えて拡張することはできません。人間はスクリプトに正確に従わないかもしれません...そしてあなたは彼らが従ったかどうかを知ることができないかもしれません。テストは完全に再現可能ではない可能性があります。実際のブラウザからメトリックを収集、統合、分析することは困難です。私は続けることができました...
仮想ユーザーを使用して実際のユーザーをシミュレートするテストツールには、このタスク用に設計されているため、これらの欠点はありません。ただし、ツールによっては、完全なシミュレーションを実行できない場合があります。ほとんどの負荷テストツールはHTTPレイヤーで動作し、ブラウザーとサーバー間で受け渡されるHTTPメッセージをシミュレートします。これらのメッセージのシミュレーションが完全である場合、サーバーは実際のユーザーとシミュレートされたユーザーの違いを区別できません...したがって、テスト結果はより有効です。アプリケーションが複雑になるほど、特にjavascript / AJAXを使用する場合、完璧なシミュレーションを作成するのは難しくなります。この点でのツールの機能は大きく異なります。
実際のブラウザを実行し、シミュレートされたマウスとキーボードのイベントをブラウザにプッシュすることでユーザーをシミュレートするテストツールの小さなグループがあります。これらのツールはHTTPメッセージを完全にシミュレートする可能性が高くなりますが、独自の問題があります。ほとんどは、単一のブラウザ(Firefoxなど)での作業に制限されています。実際のブラウザから適切なメトリックを取得するのは難しい場合があります。このアプローチは、人間を使用するよりもはるかにスケーラブルですが、HTTPレイヤーシミュレーションほどスケーラブルではありません。ただし、10,000人未満のユーザーをテストする必要があるサイトの場合、このアプローチを使用するWebベースのソリューションは必要な容量を提供できます。
仮想ユーザーは、実際のユーザーのブラウザーと http 要求の自動エミュレーションです。したがって、仮想ユーザーは実際のユーザーをシミュレートするように設計されています。仮想ユーザーを構成して、実際のユーザーが行うと思われることを実行することもできますが、ページを取得してから新しいページを送信するまでの遅延はまったくありません。これにより、サーバーでより高い負荷をシミュレートできます。
仮想ユーザー シミュレーションと実際のユーザーの実際の主な違いは、サーバーとデバイス間のネットワークと、実際のユーザーが Web サイトで実行する実際のアクションです。
違いがあります。
jmeter テストによって異なります。単一のボックスから実行している場合、IO は制限されます。単一のボックスで jmeter を使用している 10,000 人のユーザーを模倣することはできません。1 つのボックスで小規模なテストを実行できます。別の話である複数のjmeterボックスを使用する場合。
また、Cookie についてはどうですか。アプリの負荷テスト中に Cookie を保存しますか? それは違いを生む