JMeter負荷試験

アパッチJMeterによる負荷試験

JMeterを用いた負荷試験

組織が ウェブサイト、ウェブアプリケーション、または API でロード テストを過去に実行していない場合、パフォーマンスの問題やユーザー エクスペリエンスの低下を危険にさらすだけでなく、負荷テスト ソリューションの予算に余裕を持つ問題が発生する可能性があります。 Apache JMeter、トーラス、ガトリングなどのオープンソースソリューションを使用すると、オープンソースソリューションは通常自由に使用でき、先行投資が行われるため、管理に良い外観になりますが、コストがかからないわけではありません。 オープンソースツールには、LoadViewなどの商用ソリューションに比べて、いくつかの欠点があり、機能が少なくて済みます。

この記事では、JMeter の概要と、この負荷テスト ツールを使用する際に使用される考慮事項について説明します。 JMeter はプロトコルベースのテストしか実行できないので、JavaScript、HTML、CSS はレンダリングできません。

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

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

負荷テストはストレステストと同じではないことを覚えておいてください。 ウェブサイト、ウェブアプリ、または API を中断しようとしていません。 ターゲットと基になるシステムが、同時ユーザー数が多い場合、またはトラフィックが大量に適用された場合にどのように動作するかを理解しようとしています。 たとえば、大きな製品発売の日に減速するウェブサイトは、ビジネス(および顧客ロイヤルティ)に取り返しのつかない損害を与える可能性があるため、JMeterが許す限り徹底的にロードテストを行う可能性があります。

 

JMeter: はじめに

Apache JMeter は、Java 6 以降をサポートするオペレーティング システムで実行されます。 また、Oracle Java または OpenJDK をインストールする必要があります。 JMeterはかなり直感的なGUIインターフェイスを備えています。

 

テスト計画の作成

JMeterウィンドウの左側にテスト計画アイコンが表示されます。 右クリックして、[ > スレッド (ユーザー) スレッド グループの追加] を選択 > します。 これにより、スレッド グループコントロール パネルが表示され、ロード テストのユーザー数 (スレッド数)、ユーザーの総数 (ランプアップ期間)まで増加する時間、および各ユーザーがテスト スクリプトを実行する回数 (ループ カウント) を指定できます。

ユーザー数が、ブラックフライデーなど、混雑した日に予想されるトラフィック量を反映していることを確認します。

スレッド グループを作成すると、テスト計画の下のツリーに表示されます。 次に、HTTP 要求の既定値を追加する必要があります。 [スレッド グループ] アイコンを右クリックし、[ > 構成要素 > の HTTP 要求の既定値の追加] を選択します。 コントロールパネルにウェブサイトのURLを入力します。

 

テスト スクリプトの記録

ショッピング カートにアイテムを入れてチェックアウトするなど、実際のユーザーの動作を模倣するテスト スクリプトを記録する必要があります。 Firefox や Chrome などのウェブブラウザを開き、ブラウザのネットワーク設定を JMeter のプロキシを使用するように変更します。 [手動プロキシ構成] を選択し、アドレスに 「localhost」 と入力し、ポートに 「8888」 と入力します。

これで、テスト スクリプトの記録を開始する準備が整いました。 ブラウザのアドレスバーにウェブサイトのURLを入力し、Enterキーを押します。 サイトのホーム ページで、いくつかのリンクをクリックして、実際のユーザーと同じように移動します。 ブラウザを閉じてJMeterに戻ります。 [スレッド グループ] ツリーを展開し、スレッド グループの下に複数のサンプラーが存在することを確認します。 これらは、スクリプトを記録するときに移動したさまざまなページです。

テスト計画を保存し、スレッド グループを右クリックして [検証] を選択してスクリプトを検証します。 スレッドグループの下にある結果の表示アイコンをクリックして、検証が成功したかどうかを確認します。

 

ロード テストの実行

JMeterのツールバーの「実行」アイコンをクリックして、ロードテストを開始します。 JMeterは、リアルタイムで更新されたグラフでテスト結果を表示します。

 

ロード テストの結果を分析する

JMeter はグラフ上のスループットを緑色で表示します。 スループットが高いほど、サーバーは負荷の高い処理を行うことができます。

JMeterは、仮想ユーザーをコンピュータからあなたのウェブサイトに送信することに注意してください。 言い方をすると、家の中から電話がかかってくる。 つまり、ロード テストは実際のトラフィックを反映していません。 適切なロード テスト ソリューションは、外部の場所 、特にユーザーが配置されている領域と地域からテストする方法を提供する必要があります。 これにより、ユーザーの視点からパフォーマンスが表示され、より現実的なロード テスト結果が得られます。

JMeterが提供する機能がニーズに合わせて不十分な場合は、世界中の地理的な場所から多数の同時ユーザーをサイトに送信できるLoadViewなどのクラウドベースの負荷テストソリューションを試すことができます。

LoadView プラットフォームは 、JMeter ロードテストをサポートしています。 ロードビュー プラットフォームに JMX ファイルをアップロードし、ロード テストの設定を構成し、複数の地理的場所からロード テストを実行します。 LoadView は、組織のニーズを満たすエンタープライズ レベルの機能とパッケージを提供します。

LoadView が市場に出ている他のロード テスト ツールとどのように比較されるかを確認します。