基本情報
概要
Apache Jmeter(アパッチジェイメーター)とは、サーバ負荷テスト(パフォーマンス計測)アプリケーションです。サーバに対して大量の各種リクエストを投げかけ、負荷をかけてパフォーマンスを計測します。
基本説明
Apache Jmeterは、サーバに対して、秒間1万リクエストなどの負荷をかけ、その応答時間などの指標を見ることで、パフォーマンスを計測できます。また、レスポンス内容の妥当性も判定できるため、単体機能テストに使用することも可能です。
多数の機能を搭載しており、条件分岐などを含むテストシナリオを作成できます。
経緯
2001年に、初版がリリースされました。
2011年に、Apacheトップレベルプロジェクトに昇格しました。
主な特徴
パフォーマンス計測
JMeterは、さまざまな条件のもとでパフォーマンスを計測できます。
計測したパフォーマンス結果データは、グラフィカル表示/テーブル形式表示などで確認できます。
プラグインアーキテクチャ
JMeterはプラグインアーキテクチャに基づいており、ほとんどの機能はプラグインで実装されています。ビルドせずにJMeterを拡張できます。
テストシナリオ
「100人のユーザで、1分間に1ユーザが6回ずつリクエストを送信し、10分間負荷をかける」などのテストシナリオを作成します。テストシナリオに基づいて、Apache Jmeterにテスト情報を登録します。
作成したテスト情報は、XMLファイルで保存できます。
スレッドグループ
テスト情報のベースとして「スレッドグループ」を作成します。負荷テストの1つの実行単位になります。
「スレッド数」「Ramp-Up期間(秒)」「ループ回数」を設定します。
例えば、「スレッド数」=60、「Ramp-Up期間」=60、「ループ回数」=1とすると、「60のスレッドを60秒かけて処理を行い、スレッドごとに1回だけ実行する」という意味になり、「1秒に1回ずつリクエストが投げられる」ということになります。
サンプラー
「サンプラー」とは「スレッド」にぶら下がる設定項目です。「対象URL」「プロトコル」「リクエストパラメータ」などを設定します。
プロトコル種類として、HTTP/FTP/JDBC/LDAP/SOAPなどを指定できます。
コントローラー
「コントローラー」機能により、条件分岐などの複雑なテストシナリオを設定できます。
HTTPクッキーマネージャ
「HTTPクッキーマネージャ」は、セッション/Cookie/Basic認証などを管理します。
タイマ
「タイマ」機能で、リクエスト送信のタイムラグを設定できます。
アサーション
「アサーション」機能により、レスポンス情報が正しいかの判定も行えます。
この機能を利用して、各種サービスの単体テストツールとしても利用できます。
リスナー
「リスナー」とは、テスト実行によって得られた各種情報を収集/表示するためのものです。必要とする情報を収集するように設定します。
プロキシでのテストケース自動生成機能
JmeterをProxyサーバにして、クライアントからサーバへのリクエストを仲介することにより、Jmeterがリクエストを読み取り、「スレッドグループ」以下に自動で追加できます。
100% pure Java
Java稼働環境であれば、OS種別を問いません。
GUI
GUIでもCUIでも操作できます。
同様製品
同様な機能を提供する製品として、次のようなものがあります。
オープンソース製品:「Tsung」「Gatling」など。
ライセンス情報
Apache Jmeterのライセンスは「Apache License 2.0」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。
ダウンロード
※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。