Jmeter のフルプロセス パフォーマンス テストの実践を含む 0 から 1 までの 2000 ワードの記事

プロジェクトの背景:

私たちのプラットフォームは国内の特定産業向けの監視プラットフォームです。3回の機能テストとインターフェイステストを経て、98%の問題が解決されました。データをアップロードするために地方プラットフォームのインターフェイスでパフォーマンステストを実施することにしました。国家プラットフォームへ。

01. テスト手順

1. パフォーマンス テスト計画を作成する

私はこのプロジェクトチームに加わってまだ日が浅いため、3つのモジュールの機能テストとインターフェースの回帰テストに参加しただけだったので、パフォーマンステストの計画書を書く際には、まずビジネスプロセスとビジネス機能を中心に整理しました。パフォーマンステスト インターフェイスのドキュメントをもう一度注意深く読みます。インストラクターの指導の下、各インターフェイスの応答の機能をよりよく理解できました。最大の利点は、パフォーマンス テストが各インターフェイスの実際の機能に対応していることです。特定のオブジェクトについては、2 種類のデータ アップロードがあり、1 つはリアルタイム データ、もう 1 つは履歴データです。

現時点では、リアルタイムデータは継続的なアップロードの安定性にもっと注意を払う必要がありますが、履歴データはデータが蓄積された後に一度に複数(1000)のデータをアップロードする状況にもっと注意を払い、正確さにもっと注意を払う必要がありますデータのアップロード、完全性を保証します

各インターフェースの機能やデータアップロードのロジックを整理した上で、各インターフェースの性能テスト方法、テスト項目、必要なデータを設計し、テスト計画が完成します。

ここにいくつかのスクリーンショットがあります

 

テスト計画は実際の運用が可能な条件で作成され、その後の実装プロセスで調整が必要な箇所は実際のニーズに合わせて調整されます。

2. テスト計画に関するディスカッション

試験計画書を上司に提出してレビューしてもらった後、グループで話し合いを行う会議を開催し、チームリーダーが不適切な部分の改善案を出したり、同僚が独自のアイデアを出したりして、全員で議論することで不明点が明確になっていきました。議論の結果、テスト計画はプロジェクトのニーズにより適し、より実現可能になりました。

今回変更する必要があるスクリーンショットは次のとおりです。

3. パフォーマンステストの実行

テストには Jmeter ツールを使用します。

インターフェース情報は次のとおりです。

テスト スクリプトは Java で記述され、データは json 形式でパッケージ化されます。

4. テストレポートの出力

5. データを分析する

6. トラブルシューティング

7. パフォーマンスの向上

02. 事例共有

以下は、インターフェイスのケース履歴データのアップロードの詳細な分析です。

1. スレッド グループを作成します。

Jmeter.bat を開くと、グラフィカル インターフェイスが表示されます。次の画像を順番にクリックしてください。

2. HTTP デフォルトリクエストを追加します。

このアクセサリを追加するには、このスレッド グループのアクセス アドレスとポートを制御するために、次のようにクリックします。

テストする IP とポートに応じて、HTTP のデフォルトのリクエスト パラメーターを次のように構成します。

3. データベース接続構成:

データベースからエンタープライズ情報を取得したいため、データベース接続を設定する必要があります (設定コンポーネント - JDBC 接続設定を使用します)。固定のユーザー名とパスワードでログインする場合は、この手順を省略できます。

JDBC 接続構成:

4. コントローラーを 1 つだけ追加します。

ロジック コントローラーに属し、サンプラーの実行順序を制御するために使用されますここでのユーザーはログインする必要があるのは 1 回だけであるため、コントローラーを 1 回だけ使用するということは、このコントローラーのコンテンツがスレッド グループ操作全体で 1 回だけ循環されることを意味します。

5. HTTP リクエストを追加します。

1 回限りのコントローラーの下に追加され、そのコントローラーによって制御されます。HTTP リクエストはサンプラー (sampler) に属し、インターフェイス ドキュメントの関連内容に従って http リクエストの内容を入力します。

6. 正規表現エクストラクターを追加します。

http リクエストの応答結果から正規表現を使用して必要なキーを抽出する必要があるため、http リクエストの下に追加する必要があります。

正規表現:

  • ():囲まれた部分が抽出対象となります。

  • .: 任意の文字列と一致します。

  • +: 1 回以上。

  • ?: あまり欲張らず、最初の一致が見つかったら停止してください。

(3) テンプレート:

参考までに、正規表現に複数の正規表現がある場合は、$2 になることがあります。

3$ など。これは、解析された値の番号が参照名 (例: キー) の量に与えられることを意味します。例: $1$ は、解析された最初の値を意味します。

(4) 数字の一致: 0 はランダムな値を意味し、1 はすべての値を意味し、通常は 0 を入力します。

(5) デフォルト値: パラメータが値を取得できない場合、デフォルトで値を与えて取得させます。

7. を追加して現在時刻を取得します。

サンプラーでは BeanShell サンプラーを使用します。Redis でデータを表示するときに、データがいつアップロードされたかを容易に知るため。回数を指定するには、サンプラーに現在時刻を抽出する Java スクリプトを記述する必要があります。

8. Java を使用してスクリプトを作成し、アップロード データを設定します。

Bean Shell Sampler サンプラーもここで使用されます。データはjson形式である必要があります。ここから、スクリーンショットの一部のみが次のような場合、データを複数回アップロードする必要がある可能性があるため、サンプラーをスレッド グループに追加する必要があります。

9. http リクエストを追加して、設定したインターフェイス要件を満たすデータをアップロードします。

10. リスナーを追加する

リスナーに実行ログを保存する場所を設定します。

11. 実行後の結果を確認する


乏しい力を終わらせる

最後に、私の記事を注意深く読んでくださった皆さんに感謝します。ファンの成長と関心をずっと見ていると、相互主義が常に必要になります。それほど価値のあるものではありませんが、もしあなたがそれを持っていれば、それを奪うことができますそれが必要:

これらの資料は、[ソフトウェア テスト] の友人にとって最も包括的で完全な準備倉庫となるはずです。この倉庫は、最も困難な旅を乗り越える何万人ものテスト エンジニアにも同行してきました。あなたにも役立つことを願っています。

加入我的软件测试交流群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

ソフトウェアテストインタビューアプレット

ソフトウェア テストの質問バンクには、何百万人もの人が参加しました。誰が知っているのか!ネットワーク全体で最も包括的なクイズ ミニ プログラムです。携帯電話を使用して、地下鉄やバスの中でもクイズに答えることができます。

次の面接の質問セクションが取り上げられます。

1. ソフトウェアテストの基礎理論、2. Web、アプリ、インターフェース機能テスト、3. ネットワーク、4. データベース、5. Linux

6. Web、アプリ、インターフェイスの自動化、7. パフォーマンス テスト、8. プログラミングの基本、9. 時間面接の質問、10. 公開テストの質問、11. セキュリティ テスト、12. コンピューターの基本

入手方法:

おすすめ

転載: blog.csdn.net/jiangjunsss/article/details/130704004