パフォーマンスを測定し、アプリケーションの負荷をテストするために設計されたオープンソース Java アプリケーション。
Apache ソフトウェア財団による
Apache JMeter は、パフォーマンスを測定し、静的および動的 Web アプリケーションの負荷テストを行うことができます。
これを使用して、サーバー、サーバーのグループ、ネットワーク、またはオブジェクトに対する重い負荷をシミュレートして、その強度をテストしたり、さまざまな負荷タイプの下で全体的なパフォーマンスを分析したりできます。
完全な移植性と 100% Java。
マルチスレッドにより、多くのスレッドによる同時サンプリングや、別個のスレッド グループによるさまざまな関数の同時サンプリングが可能になります。
多くのアプリケーション/サーバー/プロトコル タイプのロードとパフォーマンス テストを行う機能:
高速なテスト計画の記録(ブラウザまたはネイティブ アプリケーションから)、ビルド、デバッグを可能にする、完全な機能を備えたテスト IDE。
任意の Java 互換 OS (Linux、Windows、Mac OSX など) からのロード テストのためのコマンドライン モード (非 GUI / ヘッドレス モード)
完全ですぐに表示できる動的 HTML レポート
InfluxDB や Graphite などのサードパーティ データベースへのライブ レポート
最も一般的な応答形式、HTML、JSON、XML、または任意のテキスト形式からデータを抽出する機能による簡単な相関関係
最新バージョンの詳細については、JMeter Apache Project Web サイトを参照してください。
Apache JMeter を実行するには次の要件があります。
Java インタプリタ:
Apache JMeter を実行するには、完全に準拠した Java 17 ランタイム環境が必要です。 keytool
ユーティリティを備えた JDK は、HTTPS Web サイトの記録に適しています。
オプションの瓶:
一部の jar は JMeter に含まれていません。必要に応じて、これらをダウンロードして lib ディレクトリに配置する必要があります。
Java コンパイラ (オプション):
ディストリビューションにはプリコンパイルされた Java バイナリ アーカイブが含まれているため、Java コンパイラは必要ありません。
Apache JMeter のプラグインをビルドするにはコンパイラが必要であることに注意してください。
ディレクトリ名内のスペースは問題を引き起こす可能性があることに注意してください。
リリースビルド
バイナリ アーカイブを適切なディレクトリ構造に解凍します。
bin
ディレクトリに移動しますjmeter
(Un*x) またはjmeter.bat
(Windows) ファイルを実行します。Windows の場合、JMX ファイルをドラッグ アンド ドロップできる他のスクリプトもいくつかあります。
jmeter-n.cmd
- 非 GUI テストとしてファイルを実行します。jmeter-nr.cmd
- 非 GUI リモート (クライアント/サーバー) テストとしてファイルを実行します。jmeter-t.cmd
- GUI テストとして実行できるようにファイルをロードします。 このリリースの日付の時点で利用可能なドキュメントも、HTML 形式で printable_docs ディレクトリに含まれており、index.html というファイルから参照できます。
「問題の追跡」を参照してください。
ソース アーカイブを適切なディレクトリ構造に解凍します。サードパーティのライブラリ ファイルのほとんどは、バイナリ アーカイブを同じディレクトリ構造に解凍することで抽出できます。
オプションの jar (上記を参照) はすべてlib/opt
および/またはlib
に配置する必要があります。
lib/opt
内の JAR は、JMeter の構築と単体テストの実行に使用されますが、実行時には使用されません。
これは、オプションの jar が他の JMeter ユーザーによってダウンロードされなかった場合に何が起こるかをテストするのに役立ちます。
プロキシの背後にいる場合は、 ~/.gradle/gradle.properties
で Gradle がプロキシを使用できるようにいくつかのビルド プロパティを設定できます。
systemProp.http.proxyHost =proxy.example.invalid
systemProp.http.proxyPort =8080
systemProp.http.proxyUser =your_user_name
systemProp.http.proxyPassword =your_password
systemProp.https.proxyHost =proxy.example.invalid
systemProp.https.proxyPort =8080
systemProp.https.proxyUser =your_user_name
systemProp.https.proxyPassword =your_password
JMeter は Gradle を使用して構築されており、JDK をプロビジョニングするために JVM プロジェクト用の Gradle のツールチェーンを使用します。これは、コードが必要な JDK をローカルで検索するか、見つからない場合はダウンロードすることを意味します。
デフォルトでは、コードはビルド目的で JDK 17 を使用しますが、ターゲット リリースは 8 に設定されるため、結果として得られるアーティファクトは Java 8 と互換性があります。
次のコマンドは、JMeter をビルドしてテストします。
./gradlew build
ビルドにカスタム JDK を使用する場合は-PjdkBuildVersion=11
設定でき、テストに別の JDK を使用する場合は-PjdkTestVersion=21
選択できます。
次のコマンドを実行すると、利用可能なビルド パラメータを一覧表示できます。
./gradlew parameters
システムに GUI ディスプレイがない場合は、次のようにします。
./gradlew build -Djava.awt.headless=true
出力アーティファクト (jar、レポート) はbuild
フォルダーに配置されます。たとえば、バイナリ アーティファクトはsrc/dist/build/distributions
にあります。
次のコマンドはアプリケーションをコンパイルし、 bin
ディレクトリからjmeter
実行できるようにします。
lib/
内容が完全に更新されるため、カスタム プラグインがlib/
にインストールされている場合は削除されることに注意してください。ただし、lib/ext/
プラグインはそのまま維持されます。
./gradlew createDist
あるいは、Gradle を取得して GUI を起動することもできます。
./gradlew runGui
ビルドとコントリビュートについては、JMeter のビルドと CONTRIBUTING.md で詳しく説明されています。 Gradle を使用して JMeter を構築するために利用できるタスクの詳細については、gradle.md を参照してください。
コードは次から取得できます。
法的およびライセンスに関する情報については、次のファイルを参照してください。
この配布には、暗号化ソフトウェアで使用するように設計されたソフトウェアが含まれる場合があります。現在居住している国によっては、暗号化ソフトウェアの輸入、所持、使用、および他国への再輸出が制限されている場合があります。暗号化ソフトウェアを使用する前に、暗号化ソフトウェアの輸入、所持、使用、および再輸出に関するあなたの国の法律、規制、政策を確認し、これが許可されているかどうかを確認してください。詳細については、https://www.wassenaar.org/ を参照してください。
米国政府商務省産業安全保障局 (BIS) は、このソフトウェアを輸出商品管理番号 (ECCN) 5D002.C.1 として分類しました。これには、非対称アルゴリズムによる暗号化機能を使用または実行する情報セキュリティ ソフトウェアが含まれます。この Apache Software Foundation ディストリビューションの形式と方法により、オブジェクト コードとソース コードの両方について、ライセンス例外 ENC テクノロジ ソフトウェア無制限 (TSU) 例外 (BIS 輸出管理規則、セクション 740.13 を参照) に基づいて輸出の対象となります。
以下に、暗号化ソフトウェアの輸出規制の対象となる可能性がある付属ソフトウェアの詳細を示します。
Apache JMeter は、Java Secure Socket Extension (JSSE) API とインターフェースして提供します。
Apache JMeter は、Java Cryptography Extension (JCE) API と (Apache HttpClient4 経由で) インターフェースし、提供します。
Apache JMeter には、JSSE または JCE の実装は含まれていません。
Apache JMeter をご利用いただきありがとうございます。
mxparser に関する注意:
この製品には、インディアナ大学 Extreme! によって開発されたソフトウェアが含まれています。研究室詳細については、http://www.extreme.indiana.edu/ をご覧ください。