高度なシステムパフォーマンステスト

基本コンセプト

1.システムパフォーマンスには、実行効率、リソース占有率、システムの安定性、セキュリティ、互換性、信頼性、およびスケーラビリティが含まれます。
2.パフォーマンステストの8つのカテゴリ:パフォーマンステスト、負荷テスト、ストレステスト、構成テスト、同時実行テスト、容量テスト(データベース)、信頼性テスト(システムの安定性)。通常、機能テストの終了後に開始されます。
負荷テスト:
段階的な加圧、単位時間あたりの高圧によってシステムの処理と耐久性のしきい値を決定します。ストレステスト:段階的な加圧によってシステムパフォーマンスの変化をテストし、テスト対象のオブジェクトがパフォーマンス指標を満たしているかどうかを確認します。
容量テスト:容量パフォーマンスが大きいほど良い
3.ユニットテスト(オブジェクト指向テストはクラス)、インターフェイステスト、インターフェイス入力パラメータ(フロントエンド)、出力パラメータ(バックエンド)のパフォーマンステストも実行できるため、パフォーマンステストがすべてのシステムであるとは限りません。レベル、ユニットレベル、インターフェイスレベル、小規模なフロントエンドユーザーはHTTPwatchを使用してテストできます。

パフォーマンス指標と関連する計算式

1.スループット:単位時間あたりに処理されるクライアント要求の数。スループットが高いほど、単位時間あたりに処理されるデータが多くなり、システムの負荷容量が大きくなります。通常、どちらのサーバーが優れているかを評価するために使用されます。 =(同時仮想ユーザーの数、各VUによって発行された要求の数)/パフォーマンステストに費やされた時間。オンラインユーザーの数は、プラグインhttp://www.51.laを介して、
または2-8の原則に従って計算できます
たとえば、ユーザーログインシナリオ:朝のピーク時間の8:50〜9:10に、5000シートがオンラインでログインします。ビジネスボリューム:5000
時間:20x60 = 1200秒
スループット= 80%xビジネスボリューム/(20%時間)=








5000/1200 = 4.1 /秒ではなく4000/240 = 16.7 /秒2.同時数(同時仮想ユーザー数仮想ユーザー)同時実行計算式:(1)同時ユーザーの平均数を計算します:C = nL / T   (2)同時ユーザーのピーク数:   式(1)のC'≈C+ 3ルートC 、Cは平均です同時ユーザーの数; nはログインセッションの平均数とシステムにアクセスする人数です。Lはログインセッションの平均の長さと平均オンライン時間の長さです。Tは調査された期間の長さです。式(2)は、同時ユーザーのピーク数の計算方法を示します。ここで、C 'は同時ユーザーのピーク数を示し、Cは式(1)で取得された同時ユーザーの平均数です。この式は、ユーザーのログインセッションがポアソン分布に従っているという仮定に基づいて推定されています。C = n / 10 C ^ = r C(通常はr = 2〜3)の広い範囲の同時ユーザー数の式もあり
通常、システムにアクセスする最大ユーザー数の10%が平均同時ユーザー数として使用されます。
3.思考時間:
思考時間、スクリプトでlr_think_time()関数を使用して実際の状況をシミュレートし、それを追加すると、シミュレーションの制限を削除できます。思考時間は、ユーザーの行動とサーバーネットワークに完全に依存します。
オンラインユーザー:オンラインセッションを維持すると、メモリが消費されます。リソース
4.応答時間:ユーザーが要求を開始してから、クライアントがサーバーから応答を受信して​​結果情報がクライアントに表示されるまでのプロセス全体にかかる時間を指します。応答時間=ネットワーク送信時間+ Webアプリケーションサーバー処理遅延時間+データベースサーバー処理遅延時間+クライアント処理遅延時間(ユーザー側から見ると、違いはネットワーク送信にあります。通常、テストはローカルエリアネットワークで実行され、ネットワークに問題がないことを確認します( LRはアナログ帯域幅を設定できます)通常、平均応答時間が使用されます
。5。ヒット:クライアントがWebサーバーに送信するHTTP要求の数に基づいて計算されます。通常、1秒あたりのヒット数で測定されます。サーバー処理能力
6.パフォーマンスカウンター(カウンター):関連するサーバーまたはオペレーティングシステムミドルウェアのパフォーマンスを説明するいくつかのデータインジケーター
7.リソース使用率:さまざまなリソースの使用は、ショートボード効果の原則に従います
。8。ネットワークスループット:ネットワークが正常に動作している場合、単位時間あたりにネットワークを通過するデータの量。ネットワークスループットがネットワークデバイスまたはリンクの最大伝送容量に達した場合、ネットワークデバイス
9のアップグレードを検討する必要があります。エラー率は通常、1000分の5以下です。一般的に、比較的安定したシステム・エラー・レートがオーバータイムに起因するタイムアウト率と呼ばれる。
10.システムの安定性(例えば365必要として
24トラブルのない操作を、このテストを必要とする)システムは標準圧力(システム延滞毎日の圧力)下にあることを意味し、安定した動作時間(たとえば、タイプ変更テストでメモリリークが検出された場合)、少なくとも24時間以上の連続動作
11. PV:一度にIP訪問ごとに1つのPVをカウントするのは不合理であり、通常はIPに従って計算されます。

脚本要素

1.ミーティングポイント
仮想ユーザーを同期して、まったく同じ瞬間にタスクを実行します。lr_rendezvous( "トランザクション名")
2。トランザクション
トランザクションとは、サーバーが仮想ユーザーの要求に応答するのにかかる時間を指します。完全なトランザクションは、トランザクションの開始、トランザクションの終了、および1つ以上のビジネス操作とタスクで構成されます。lr_start_transaction( "transaction start")... lr_end_transaction( "transaction end"、LR_PASS)トランザクションの終了には、トランザクションステータスを含める必要があります:LR_PASS(成功)、LR_FAIL(FAIL)、LR_STOP(停止)、LR_AUTOリターンステータスの自動検出
思考時間はトランザクションに配置できません内部では、それ以外の場合はトランザクション実行時間
3にカウントされます。チェックポイント
httpはステートレスであり、クライアントがサーバーに要求を送信すると、サーバーが要求に応答する限り、それが正しいと見なします。チェックポイントは、スクリプトの再生中に特定のテキスト文字列または画像を検索して、サーバーの応答コンテンツが正しいことを確認することです。web_reg_find()は登録関数(reg付き)です。応答ページの前に配置する必要があります。チェックポイントを設定した後、[設定]-> [チェック]で対応するオプションが選択されていることを確認する必要があります。選択されていない場合、有効になりません。
web_reg_find:次の応答から指定されたフィールドテキスト文字列を検索しますhTMLページ
web_find:
HTMLページから指定されたテキスト文字列を検索しますweb_image_check:HTMLページから指定された画像を検索しますweb_global_verification:
後続のすべてのHTTPインタラクションから指定されたテキスト文字列を検索します
4.協会
スクリプトが記録されたものとまったく同じである場合、再生中にスマートサーバーに遭遇すると失敗します。アソシエーションは、スクリプト内のハードコードされたデータをセッションIDなどの動的データに変換し、手動でアソシエート、自動アソシエート、および使用できる長いデータをパラメーター化することもできます。

需要分析とビジネスシナリオ

必要性、実現可能性を分析し、システム機能に精通している:システムアーキテクチャ、ビジネスプロセス、機能の焦点、ネットワーク展開、および
パフォーマンステストの要件が明確ではない実行方法:1。ユーザーの頻繁な使用(ログイン、登録、個人的なクエリなど)情報)2。システムの重要な機能ポイント、多数のデータ操作(支払いインターフェースなど)があります3.外部システムとのインターフェースがあり、相互呼び出し関係があり、大量のデータフローがあります4.リスクがある可能性があります(突然など)ピークに達したもの)
テストポイントを決定したら、それを上級レビューアに渡してテストします

要件を決定した後、対応するテストポイントを抽出してテストを開始し(例外が少ないため、パフォーマンステストでは通常、異常分析は行われません)、パフォーマンステストでは問題を見つけて特定する必要があります。
例:データ量(ユーザー、トランザクションデータ、ピーク値、ピーク同時実行性など)を分析し、テストポイントを分析し、対応するインジケーターを決定します。
同じパフォーマンステストケースを3回実行してから、結果を分析することをお勧めします。同様の結果のみが成功することが証明されます。

同時の数を決定します

1.顧客はインジケーターまたは独自のエクスペリエンスを直接提供します。2。システムログ時間のピーク値を照会します。データベースに確認します。データベースには、Linuxログ、ネットワークトラフィックなどがあり
ます応答時間:1。ユーザー操作時間2.サーバー処理時間(2、5、 8、10)

例:システムでは、5分以内に200人のユーザー登録を完了する必要があり、応答時間は3秒以内、成功率は100%、CPUとメモリの使用率は70%以下です。
最初に、1回の登録にかかる時間を記録して計算します10.86
5 60 / 10.86 = 27
200 / 27 = 8 Vuer
8
27 = 216テストデータ
216 * 1.2回= 260データ(テストスクリプトの実行時に不十分なデータによって引き起こされるエラーを回避するために完全に準備されています)

システムリソースの消費

1. CPU使用率アルゴリズムに問題があります。使用率が非常に高くなります(シーケンスが複雑になるか、APIインターフェイスが呼び出される、無限ループなど)。90%などの特定のピークで継続できません。通常は70%を超えません。そうでない場合、ボトルネック
メモリと見なされます。 :CPUの継続使用基準に似ています(グローバル変数を定義しすぎて解放しないなどのメモリリークは高すぎます)
2。ネットワーク帯域幅:合計帯域幅の50%以下
3.ディスク
4、CPUキューの長さ、CPU以下数量+1超過は閉塞を意味します

ビジネスモデルの確立

制約:データ制約(パラメーター化、テストデータ作成)、環境制約(関連付け)
ビジネスプロセス分析
ビジネスフローチャート

おすすめ

転載: blog.csdn.net/Krystal_RonghuiLi/article/details/108001368