JMeterとは何ですか?

JMeterは、 今日の市場で最も人気のあるオープンソースの機能および負荷テストアプリケーションの1つです。 HTTP/S、SOAP、REST、FTP、LDAP、SMTP、POP3、IMAPなどのプロトコルを幅広くサポートしているため、パフォーマンス テスト エンジニアやチーム向けの費用対効果が高く、高度に構成可能なロード テスト ソリューションです

さらに、完全なJavaベースのソフトウェアとして、JMeterはプラットフォームに依存しない、さまざまなプラットフォーム上で実行することができます。 さらに、JMeterは積極的に維持され、サポートされています。 JMeterユーザーがテストをカスタマイズするのに役立つ多数のプラグインと、テストのアドバイスや支援のために寄りかかる大規模なユーザーサポートコミュニティがあります。

JMeter負荷試験:デメリット

上記の大きなメリットについては、JMeterにはまだいくつかの重要な主な欠点があります。

プロトコル ベースのロード テスト

1 つ目は、プロトコル レベルのテストしか実行できないということです。 Angular、Ember、ノックアウトなどの JavaScript ベースのアプリケーションや AJAX ベースのアプリケーションをテストする開発者は、別のソリューションを見つける必要があります。 最近のブラウザの多くは、JavaScriptとAJAXに大きく依存しており、これは Webサイト やアプリケーションのパフォーマンスを理解する際の重要な要素です。 JMeterはブラウザのようにHTMLをレンダリングできないため、負荷がかかった状態での完全な ユーザーエクスペリエンス を完全に理解するには大きなギャップが残ります。

システムの制限/ハードウェア機能

第二に、JMeterはローカルマシンにインストールする必要があるため、ユーザーはまず必要なハードウェア要件と適切なセットアップを確実にする必要があります。 このため、大規模なテストを実行すると、システム リソースが不足したり、エラーが発生したりする原因になります。 また、テストはローカル マシンやネットワークから実行されるため、パフォーマンス エンジニアは、さまざまな地理的な場所やユーザーの拠点から負荷が高い環境下でパフォーマンスを測定できないため、実際の状況でサイトやアプリケーションがどのように立ち上がるかを理解するうえで重要な要素です。

複雑なインターフェイス

最後に、JMeterは複雑な負荷テストソリューションです。 これは、今日の市場に出回っている他のロードテストソリューションほどユーザーフレンドリーではありません。 新しいユーザーにとっては、ソフトウェアのすべての機能を理解したり理解したりする作業は困難です。 テストの構築と実行に飛び込む前に、より高いレベルの知識と理解を必要とするコンポーネント、関数、およびプロパティが数多くあります。 これはすべて時間をかけて 学習 できますが、単にテストに集中し、ロード テストをすばやく簡単にセットアップおよび構成できるようにすることを目指すエンジニアや開発者にとっては障壁となります。

JMeterでロードテストを実行する方法

JMeterテスト計画の作成方法

負荷テストには、少しの調査と計画が必要です。 シンからプランやスクリプトの作成を開始し、その場でテストを構築できることを期待することはできません。 ロード テストの設定を開始する前に、テスト要件、スコープ、条件などを構築するのが理想的です。 これには、分析などのさまざまなソースから情報を収集する必要がある場合があります 交通データ用ツール、セッション期間、ピーク時の訪問者数、または以前のキャンペーンデータを確認して、負荷の量をよりよく把握する、または 同時ユーザー数、サイトまたはアプリケーションに対してテストします。

重要なのは、環境に合った計画を立て、 実際のシナリオを可能な限りシミュレートすることです。 計画を立てれば、さまざまな要素からなるJMeterでテスト計画の設定を開始できます。 基本的なJMeterロードテストは、テスト計画、スレッドグループ、サンプラーで構成されています。

JMeterテスト計画の作成

以下は、JMeterテスト計画を設定するための基本的な手順と要件です。

1. スレッドグループの追加

スレッド グループは、ロード テストに必要な同時ユーザーを表します。 スレッド グループにアクセスするには、[ テスト計画 > のスレッドの追加 > (Users) > スレッド グループ] を右クリックします。

[スレッド グループのプロパティ] ダイアログ ボックスから、次のプロパティを設定することもできます。

    • スレッド数 (ユーザー)
    • ランプアップ期間 (秒)
    • ループ数 (テストイテレーションの数)
    • 遅延、テストの開始時刻と終了時間、およびサンプラー エラーの後に実行するアクションなどの追加のアクション。

または、スレッドグループから始める代わりに、 ファイル > テンプレートの > 選択テンプレート にアクセスするか、ツールバーからテンプレートアイコンを選択して、さまざまなテストテンプレートから選択することもできます。

Web サービス テスト、Web テスト計画、機能テスト、その他多くのテンプレートなど、さまざまなテンプレートの選択内容を確認できます。 これらのテンプレートには、テスト計画の作成に使用される必要なすべての要素、セクション、およびフィールドが自動的に含まれます。

2. サンプラーの設定

サンプラーは、他のタイプのリクエストに加えて、Http(ウェブサイト、アプリケーション、API)、FTP、SMTP、TCPなどのさまざまなタイプのリクエストをJMeterが送信することを可能にするものです。 スレッド グループ > 追加サン > プラーを右クリックし、テスト要件に適したサンプラーを選択することで、サンプラーにアクセスできます。

[サンプラーの構成] フィールドに、次のような追加の詳細を入力して表示されます。

    • プロトコル (HTTP/S)
    • サーバー名または IP
    • パス (特定の Web ページ用)
    • API ロード テストの要求の種類 (GET、POST、ヘッド、PUT など)。
3. リスナーの設定方法

リスナーを使用すると 、サンプラーの結果を確認できます。 リスナーにアクセスするには、スレッド グループ > 追加 > サンプラー > リスナーに移動します。

15 を超えるリスナーの中から選択できます。 リスナーには、すべて同じデータが含まれていますが、違いは、そのデータが視覚的に表示される方法です。 さらに、JMeter テスト計画に複数のリスナーを追加できます。 表示されるリスナーの種類には、次のものがあります。

    • 概要レポート
    • 集計グラフ
    • 結果ツリーの表示
    • 結果を表に表示
    • 単純なデータ ライター
    • BeanShell リスナー
    • そして、より多くの..
4. ロード テスト スクリプトの記録方法 (オプション)

基本的な HTTP またはプロトコル レベルのロード テストを実行する場合は、次の手順に進み、JMeter ロード テストを実行します。 ただし、特定のユーザーアクションとパスをシミュレートする必要があるテストを構成する必要がある場合は、HTTP(S) テスト スクリプト レコーダを使用する必要があります。 ただ、実際のブラウザからスクリプトを記録しているのではなく、HTTPトラフィックをキャプチャしているだけであることを覚えておいてください。 以下に従う必要がある手順を示します。

    1. 録音コントローラを追加する(スレッドグループ内)
    2. サイトまたはアプリケーション間を移動する
    3. HTTP/S リクエストを使用してアクションを記録する

または、JMeterプロキシ サーバーを利用することを選択することもできます。 このオプションを使用すると、ブラウザーから スクリプト を記録できますが、セットアップには時間がかかる場合があります。 JMeterプロキシサーバーを使用するには、次の手順に従います。

    1. システムのプロキシ設定に移動します。
    2. JMeter証明書をインポートします。
    3. プロキシ設定を構成します。
5. JMeterテストを実行する

リスナーを設定したら、JMeterテストプランが完成し、JMeterロードテストを実行できます。 JMeterテストを実行するにはいくつかの方法がありますが、テスト計画を最初に保存してください。

    • オプション 1: テストを実行する緑色の三角形/矢印を選択します。
    • オプション 2: ツールバーの「実行」ボタンを選択します。
6. JMeterのテスト結果を確認し、分析します。

JMeterテストの結果は、テストの実行中に表示できます。 たとえば、[ 結果をテーブルに表示] を選択した場合、実行するたびに、またはユーザーが実行されると、結果が表示されます。 結果には、次の追加のメトリックも含まれます。

    • 時間 (ミリ秒)
    • ステータス (有効な応答とエラーを表示)
    • 送信されたバイト数とバイト数
    • 潜在
    • 接続時間

これらの結果から、エラーが発生した場所や 読み込み時間が遅い可能性がある場所を確認できます。 さらに、JMeterテストの結果と比較して、そのデータを使用してパフォーマンスの向上と最適化を行うことができます。 また、負荷の量を増やして追加のロード テストを実行することもできます。

ただし、前に説明したいくつかの欠点で概説したように、 ロードテストの規模に関しては、JMeterには限界があり、大規模な テストを実行できません。 そのために、LoadViewのような最新の負荷テストソリューションは、JMeterを使用するよりも効果的です。

ロードビュープラットフォーム

LoadView プラットフォームは、JMeter などのオープンソースのロード テスト ソリューションの制約を取り除きます。LoadView は、パフォーマンス エンジニアが Web サイト、Web サービス/API、ウェブ アプリケーションなどを簡単にテストできるようにするクラウドベースのロード テスト ソリューションです。 ウェブ コストのかかるハードウェアアップグレードに投資したり、負荷発生器の管理を心配したりする必要はありません。 LoadView プラットフォームを使用すると、これらの時間と負担のかかるタスクが排除されるため、パフォーマンス エンジニアとチームはサイト、アプリケーション、API のテストと 改善に集中できます。

ロードビューによるJMeterロードテスト

ロードビューでJMeterロードテストの制限を克服

さらに、LoadView は世界中の 40 を超える地理的位置を提供するため、すべてのサイト、アプリケーション、または API がそれらの場所からどのように実行されるかを実際に理解し、より現実的なテスト結果と、これらの要素がユーザーの前でどのように実行されるかのデータを提供します。 さらに、クラウドジェネレータの世界的なネットワークを利用することで、JMeterのようなオープンソースの負荷テストソリューションが提供できない数千人または数百万人の同時ユーザーにテストを拡張できます。

ロードビュー:JMeterロードテストを拡張する

JMeterを使用していて、大規模なテストを実行するためのより良い方法を探しているなら、LoadViewプラットフォームは 、JMeterテスト計画をLoadViewに 転送し、わずか数分でJMeterロードテストを実行するための自動かつシームレスな方法を提供します。 直感的なインターフェイスと複数の負荷曲線、グローバルなテスト場所、および包括的なパフォーマンス レポートなどの機能を備えた LoadView プラットフォームは、JMeter に代わる素晴らしい代替手段です。 JMeter スクリプトを使用して LoadView でロード テストを設定する方法を見てみましょう。

ロードビューを使用した JMeter ロードテストのセットアップ手順

LoadView アカウントを持っていない場合は 、1 つのアカウントを設定する高速かつ簡単です。. さらに、最大 5 つの無料ロード テストを開始できます。

1. JMeter スクリプトを保存する

JMeterアプリケーション内で、JMeterテストプランをローカルコンピュータのJMXファイルに保存します。

2. ロードビューにログイン

に、LoadViewアカウントにログイン し、JMeterテストタイプオプションを選択します。

3. JMeter スクリプトをインポートする

[タスクのコンフィグレーション] ページで、[インポート] を選択して JMX ファイルをインポートします。 ファイルの XML コンテンツは、JMeter プロジェクト フィールドに表示されます。 リクエストパラメータは、インポート時にLoadView JMeterプロジェクトに自動的に変換され、次のパラメータが含まれます。

    • ターゲット URL または IP
    • エンドポイントへのパス
    • 要求タイプ
    • 要求ヘッダー
    • テキスト アサーション

注: LoadView はスレッドグループ設定を LoadView JMeter プロジェクトにインポートしません。 LoadView でロード テストの実行シナリオを設定することで、スレッド プロパティ (スレッド数、ランプアップ期間など) を構成できます。 必要に応じて、ここからフィールドの XML コードを編集することもできます。

別のオプションとして、[設定] フィールドで、テスト セッションの実行タイムアウトを設定できます。 LoadView ソリューションは、指定された時間、ターゲット リソースからの応答を待機し、実行時間が制限を超えた場合、システムはセッションを終了し、エラーを返します。 このフィールドを空白のままにすると、デフォルトのタイムアウト制限 (120 秒) が使用されます。

4. デバイスの作成
[デバイスの作成] をクリックし、ロード テストの実行シナリオを続行します。

5. テスト実行計画の設定

JMeterテストプランをインポートしたら、次のステップはテスト実行シナリオを設定することです。 JMeter スレッドグループにスレッドプロパティを設定し、LoadViewで同じロードパターンを使用する場合は、指定された推奨事項を使用して、対応するロードタイプパラメータを指定します。

または、特定のテスト要件に応じて、[荷重タイプ]セクション内の他の 荷重曲線オプション から選択することもできます。 スレッドとランプアップ/ランプダウン期間の構成の詳細

6. ロード テストを実行し、結果を分析する

ロード テスト計画を完全に構成したら、JMeter ロード テストを実行できます。 テストは、初期化、ロード インジェクタの開始、テストの実行など、いくつかの手順を実行します。 テストが完了すると、通知が表示され、[ ロード テストの結果 ] ページからロード テストの結果にアクセスできます。

ロードビュープラットフォームへのJMeter負荷テストの変換に関するサポートが必要な場合は、 テクニカルサポートチームにご連絡ください。

または、LoadView プラットフォーム内から直接チケットを送信できます。 サポートチケットを送信するには、アカウントにログインしてください。 右上から、 サポート > チケット にカーソルを合わせてリクエストを送信します。 当社のチームは、すべての負荷とパフォーマンステストのニーズを支援するために24時間365日利用可能です。