1. ソフトウェアのパフォーマンスとパフォーマンステストとは何ですか
定義: ソフトウェアのパフォーマンスとは、ソフトウェアの非機能的な特性であり、ソフトウェアが特定の機能を完了できるかどうかではなく、機能が完了したときに表示される適時性に関係します。
定義上、パフォーマンスはソフトウェアの非機能特性に焦点を当てているため、一般的に言えば、パフォーマンス テストに介入する時期は機能テストが完了した後です。さらに、定義の適時性は、パフォーマンスが時間や他の指標によって測定できる指標でもあることを示しています。通常、ソフトウェアの特定の指標が要件を満たしているかどうかを検出するために特定のツールまたは手段を使用します。これがパフォーマンス テストです。 。
パフォーマンス テストの定義: 自動テスト ツールを使用して、さまざまな正常、ピーク、および異常な負荷条件をシミュレートすることにより、システムのさまざまなパフォーマンス指標をテストすることを指します。
2. 性能試験の種類
- ベンチマークテスト: システムに低圧を適用するときに、システムの動作状態を確認し、基本的な参考値として関連する数値を記録します。
- 負荷テスト: システムにかかる圧力を継続的に増加させること、またはシステムの 1 つ以上の項目が損傷するまで特定の圧力下での時間を延長することを指します。
- パフォーマンス指標が安全上の限界値に達すると、たとえば、特定のリソースが飽和状態に達します。
- ストレス テスト: ストレス テストは、システムが予想負荷以上にあるときのシステムの動作を評価するもので、ピーク負荷または最大負荷を超えたときのシステムの処理能力に焦点を当てています。
- 安定性テスト: 一定のビジネス圧力がシステムにかかると、システムを一定期間実行して、システムが安定しているかどうかを確認します。
- 同時実行性テスト: 複数のユーザーが同じアプリケーション、同じモジュール、またはデータ レコードに同時にアクセスしたときに、デッドロックやその他のパフォーマンスの問題が発生するかどうかをテストします。
3. パフォーマンステストの基本概念
1. 応答時間
a) 定義:
応答時間は、ユーザーがリクエストを送信してから、サーバーから返された応答データを受信するまでの時間です。
b) クリティカル パス:
下図はhttpリクエストのパスを示したもので、リクエストはネットワーク経由でWebサーバーに送信され処理され、DB操作が必要な場合はネットワーク経由でデータベースに転送されて処理され、戻ります。値を Web サーバーに送信し、Web サーバーは最終的に結果データをネットワーク経由でクライアントに返します。
c) 計算方法:
図に示すように、クライアントのリクエスト応答時間= (N1 + N2 + N3 + N4 + N5 + N6) + (A1 + A2 + A3 + A4 + A5 + A6)、つまり (ネットワーク時間 + アプリケーション処理時間) となります。
d) 応答時間と負荷の対応:
図の変曲点の説明:
1. 応答時間の急激な増加
2. システムの 1 つ以上のリソースが到達した制限を意味します
3. 変曲点は通常、パフォーマンス テストの分析と位置決めに使用できます。
2. スループット
a) 定義:
システムが単位時間当たりに処理したクライアントリクエストの数
b) 計算単位:
一般に、スループットの単位として 1 秒あたりのリクエスト数が使用され、ページ数/ストップウォッチで表すことができます。
また、ビジネスの観点からは、1日あたりの訪問者数や1日あたりのページビュー数なども単位として使用できます。
c) 計算方法:
スループット = (リクエスト数) / (合計時間)。
d) スループットと負荷の対応:
図の変曲点の説明:
1. スループットが徐々に飽和する
2. システムの 1 つ以上のリソースが到達した制限を意味します
3. 変曲点は通常、パフォーマンス テストの分析と位置決めに使用できます。
3.同時接続数:
-
同時ユーザーの数: 特定の物理的瞬間に同時にシステムにリクエストを送信するユーザーの数。送信されたリクエストは、同じシナリオまたは機能に対するものである場合もあれば、異なるシナリオまたは機能に対するものである場合もあります。
-
オンライン ユーザーの数: 一定期間内にシステムにアクセスするユーザーの数。これらのユーザーは必ずしも同時にシステムにリクエストを送信するとは限りません。
-
システムユーザー数:システムに登録されているユーザーデータの総数
3 つの関係: システム ユーザー数 >= オンライン ユーザー数 >= 同時ユーザー数
4. リソースの利用
a) 定義:
さまざまなシステム リソースの使用度を指し、通常は最大占有量のパーセンテージとして測定されます。
b) 通常注意が必要なサーバー リソースは次のとおりです。
1. CPU: 人間の脳と同じように、主に関連事項の判断と実際の処理機構を担当します。
2. メモリ:脳内の記憶ブロック領域で、目や皮膚などで収集した情報をCPUが判断するために記録する場所ですが、一時的なものでアクセス速度が速いです。 OFFまたは電源を切ると、ここのデータは消えます。
3. ディスク IO: 重要なデータを保存する脳内のメモリ ブロック (永久に保存され、電源を切っても失われませんが、速度は遅いです)。これにより、これらのデータは将来再び使用できるようになります。
4.ネットワーク:
c) リソース使用率と負荷の対応:
図の変曲点の説明:
1. サーバー上の推奨リソースの使用量が徐々に飽和状態に達している
2. 変曲点は通常、パフォーマンス テストの分析と位置決めに使用できます。
5. その他の一般的に使用される概念:
a) TPS:
1 秒あたりのトランザクション数、1 秒あたりのトランザクション数
b) 思考時間:
各ユーザー操作後の一時停止時間、またはサーバーに負荷がかからない操作間の間隔。
c) クリック数:
ユーザーが WEB サーバーに送信した HTTP リクエストの 1 秒あたりの数。このインジケーターは WEB アプリケーション特有のインジケーターです: WEB アプリケーションは「リクエスト-レスポンス」モードにあり、ユーザーがアプリケーションを送信すると、サーバーはそれを 1 回処理する必要があるため、クリックは WEB アプリケーションが実行できるトランザクションの最小単位です。取り持つ。各クリックがトランザクションとして定義される場合、クリック率と TPS は概念です。ヒット率が高くなるほど、サーバーへの負荷が大きくなることが簡単にわかります。クリックスルー率はパフォーマンスの参考指標にすぎず、クリックの影響を分析することが重要です。1 回のクリック操作で、クライアントはサーバーに複数の HTTP リクエストを送信する可能性があるため、ここでのクリックはマウスのクリック操作を指すものではないことに注意してください。
d)PV:
URLにアクセスするとPV(ページビュー、ページビュー)が発生し、各Webサイトの1日のPVの合計はWebサイトの規模を表す重要な指標となります。
紫外線:
独立したユーザーとして、サイトにアクセスするすべてのページは UV (ユニーク訪問者、ユーザー訪問) としてカウントされます。