「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。

-[[戻る>負荷テストのポイント]]

* 目次 [#n8736141]
#contents

*概要 [#bf32d6de]
Apache Jmeterは

-負荷テスト用途に特化したツールであり、~
proxyを使用して電文を記録し、再生する。

-電文の記録は、ブラウザに特化しておらず、~
さまざまな電文の記録が可能になっている。

-再生の際は、電文を再送する以外に、スクリプトを使用して、
--可変値の追跡
--入力値にテストデータを組込む
--クライアントのCookie操作の再現

>などができる。

-また、Java のランタイム (JRE)上で動作するため、~
さまざまなクライアント端末上で実行可能。

*[[用語>Jmeter用語]] [#fd74e666]

*前提 [#e7419c18]
**プロトロル [#v34967e5]
対応プロトコル

-HTTP(HTTPS)
-FTP
-LDAP
-JDBC
-MongoDB
-SMTP
-POP3(S)/IMAP(S)
-JMS(Java Message Service)
-OSコマンド

**認証 [#d54fd75c]
-以下の認証に対応している。
--Basic
--Digest
--NTLM
--Kerberos

-プロトコル毎
--HTTPの場合~
HTTP認証マネージャで設定。

--FTPの場合~
・・・
--LDAPの場合~
・・・
--JDBCの場合~
・・・
--MongoDBの場合~
・・・
--SMTPの場合~
・・・
--POP3(S)/IMAP(S)の場合~
・・・
--JMS(Java Message Service)の場合~
・・・

**電文キャプチャせず実行 [#f777a827]
-通常は、[[電文をキャプチャして実行>#d43e7233]]することが多いと思うが、~
電文キャプチャせず指定の電文を作成して実行することもできる。

-その場合、
--[[HTTPリクエストのサンプラーを直接追加して送信する電文を指定する>JmeterによるWebアプリの負荷テスト#v288a329]]。
--[[必要に応じて、HTTP ヘッダマネージャでHTTP ヘッダを変更する>Jmeter用語#r2ee8f16]]。

>という単純な方法で負荷テストを作成・実行できる。

-なお、送信電文が不明な場合は、~
「[[HTTPデバッグ・プロキシ Fiddler>電文を確認する方法(パケット・キャプチャ)#w11d3ad2]]」などを使用して電文を確認できる。

-参考
--JMeterでJSONをPOST - ひと目で尋常じゃないもふもふだと(ry~
http://jnst.hateblo.jp/entry/2014/04/10/164103

**電文キャプチャと実行 [#d43e7233]

***キャプチャ [#f2256641]
-キャプチャについては、HTTP(HTTPS)のみサポート。
-プロキシを使用してキャプチャするので、~
[[XML]]、[[JSON]]等の[[WebAPI]]でも利用可能。

***実行 [#s2b024ed]
-HTTP(HTTPS)であれば、スクリプト修正で、
--可変値の追跡
--入力値にテストデータを組込む

>などを行うことは可能だが、

-実行時に、受信データ件数に応じて、~
送信データ件数を変更することはできない。
--負荷テストではココまで厳密なテストは不要。
--このような要件には、[[UI自動化による回帰テストツール>#wc3679b0]]を使用する。

**UI自動化、回帰テスト [#wc3679b0]

***UI自動化 [#pbbe77d0]
対応していない(対応する機能は無い)。

***回帰テスト [#ua655c17]
-負荷テスト機能の延長上でサポート。
-[[UI自動化>#pbbe77d0]]機能による回帰テストはサポートしていない。

*実施 [#fec39001]

**[[インストール>Jmeterのインストール]] [#jf5e3324]

**[[Webアプリの場合>JmeterによるWebアプリの負荷テスト]] [#g708af6e]

**[[3層C/Sの場合>Jmeterによる3層C/Sの負荷テスト]] [#a4cbc69c]

**2層C/Sの場合 [#k65c5f1d]
-JDBCのサンプラーを直実行するなどしかない。
-ただし、ワークロードの記録ができない。
-一般論に関しては[[コチラ>負荷テストのポイント#vbe698df]]が参考になる。

-参考:JMeter で SQL Server の負荷テスト at SE の雑記~
https://blog.engineer-memo.com/2013/02/02/jmeter-%E3%81%A7-sql-server-%E3%81%AE%E8%B2%A0%E8%8D%B7%E3%83%86%E3%82%B9%E3%83%88/

*参考 [#z01d3b6a]
**jMeterチュートリアル [#vfce5f67]
-jMeterチュートリアル~
http://www.w3ii.com/ja/jmeter/default.html

**内部リンク [#t80e08a7]

***[[Jmeter用語]] [#gf94097d]

***[[Jmeterのインストール]] [#k7cd5c15]

***[[JmeterによるWebアプリの負荷テスト]] [#gac25cfb]
-[[Jmeterによる可変値の追跡]]
--[[Jmeterの正規表現]]
-[[Jmeterの結果のレポーティング]]

***[[Jmeterによる3層C/Sの負荷テスト]] [#pda87943]

**その他 [#tfbd98a5]

-Apache JMeter - Apache JMeter™~
http://jmeter.apache.org/

-JMeterでWebアプリケーションのパフォーマンス測定を行う (1/4):CodeZine(コードジン)~
https://codezine.jp/article/detail/336

***Qiita [#j92b3d94]
-JMeterの簡単な使い方まとめ~
https://qiita.com/digdagdag/items/8a4023ddc7d549fa8de8
-Jmeter のインストールから負荷テストまで~
https://qiita.com/shotets/items/d553d7be0d407a9a9a53

***jMeterチュートリアル [#c8611a82]
http://www.w3ii.com/ja/jmeter/default.html
-jMeter 概要
-jMeter 環境
-jMeter テスト計画を構築
-jMeter テスト計画の要素
-jMeter ウェブテスト計画
-jMeter データベースのテスト計画
-jMeter FTPテスト計画
-jMeter Webサービスのテスト計画
-jMeter JMSテスト計画
-jMeter テスト計画を監視します
-jMeter リスナー
-jMeter 機能
-jMeter 正規表現
-jMeter ベストプラクティス
-jMeter クイックガイド
-jMeter 便利なリソース

***TECHSCORE(テックスコア) [#adc01aae]
JMeter~
http://www.techscore.com/tech/Java/ApacheJakarta/JMeter/index/

+JMeterの基本
--1.1. JMeterとは
--1.2. インストールと実行
--1.3. 簡単なテスト
+リスナー
--2.1. リスナーとは
--2.2. リスナーの使用法
--2.3. 結果を表で表示
--2.4. 統計レポート
--2.5. グラフ表示
--2.6. その他のリスナー
+設定エレメント
--3.1. 設定エレメントとは
--3.2. HTTPリクエスト初期設定
--3.3. HTTP認証マネージャ
--3.4. HTTPヘッダマネージャ
--3.5. HTTPクッキーマネージャ
--3.6. その他の設定エレメント
+ロジックコントローラ
--4.1. ロジックコントローラとは
--4.2. インターリーブコントローラ
--4.3. 乱数コントローラ
--4.4. ループコントローラ
--4.5. 一度だけ実行されるコントローラ
--4.6. シンプルコントローラ
+アサーション
--5.1. アサーションとは
--5.2. アサーション
--5.3. アサーションの持続
--5.4. サイズアサーション
--5.5. XMLアサーション
+プロキシサーバ
--6.1. プロキシサーバとは
--6.2. 基本的な使い方
--6.3. 便利な設定
+JDBCリクエスト
--7.1. JDBCリクエストとは
--7.2. JDBCリクエストの設定
--7.3. JDBCリクエストで利用する設定エレメント
+負荷テスト計画の立て方
--8.1. 負荷テスト計画
--8.2. 事前に集めておく情報
--8.3. テスト計画の作成と実施

----
Tags: [[:テスト]]
Tags: [[:テスト]], [[:ツール類]]


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS