#author("2019-06-28T11:19:46+00:00","","")
// 下階層用テンプレート
#topicpath
----
//ここにコンテンツを記述します。
[[JMeter - Apache JMeter>http://jakarta.apache.org/jmeter/]]はWEB向けのPure Javaなストレスツールです。WEBアプリケーションに対して負荷をかけるためのツールですね。このツールはレポーティング機能も充実しているので、性能テストや負荷テストなどに利用すれば作業を効率よく行うことができそうです。



#contents



**ダウンロード [#yc0a4fcb]
[[The Jakarta Site - JMeter Downloads>http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi]]よりダウンロード可能です。インストールも解凍するだけですね。



**やってみる [#sab3fc53]
実際にやってみます。

シナリオとしては
-http://localhost:8080/stressTest/index.do でログイン画面表示
-http://localhost:8080/stressTest/login.do でログインアクション->ログイン中画面
-http://localhost:8080/stressTest/logout.doでログアウトアクション->ログアウトしました画面->元のログイン画面
-ログアウトアクションでは、トークンチェックしている

なんてモノをやってみようと思います。ログインアクションはパラメタとしてuserid,password を取ります。んで、それぞれ
 userid=hoge
 password=fuga
だったらOKとロジックがくんであります。またトークンチェックとはいわゆる[[Strutsの同期トークンの機能>Struts/同期トークンで二度押しなどをチェックする]]で、ログアウトのリンクの後ろに
 /stressTest/logout.do?org.apache.struts.taglib.html.TOKEN
                            =166176d36f24bb9a0c77df7f368d2fd4
というリクエストごとに異なる値が載っているというモノです。このパラメタは毎回異なるので、JMeterの設定は注意が必要です。


&color(red){絶対に他者のサイトにストレスをかけないでください。他者のサイトにストレスをかけた場合、最悪の場合損害賠償を請求されるかもしれないので、十分ご注意ください。};



では実際にストレステストのシナリオを作っていこうと思います。

***全体の設定 [#g43446a6]

テスト計画で右クリックして
 追加 > スレッドグループ
で追加します。

#ref(01.png)


下記のスレッドグループ設定では、
-スレッド数
-何秒かけて起動するか((10秒と設定したら、上のスレッドを10秒かけて起動する))
-ループ回数(上の設定を何回ループするか)

などを設定します。たとえば
-スレッド数 5
-Ramp-Up期間 10秒
-ループ回数 1

とした場合、10秒で5スレッドを起動するので、2秒に1回(初回の)クエリが発行されることになります。


#ref(02threadGroup.png)

***接続先の指定 [#n9577943]
次に接続先のサーバを指定します。テスト計画で右クリックして
 追加 > 設定エレメント > HTTPリクエスト初期値設定
で追加します。

#ref(03Init.png)

ここでは接続先のサーバ名やプロトコルなどを一括で指定することができます。すべてのクエリに載せたいパラメタなんかもかけそうです。
#ref(04Init.png)



***各クエリの追加 [#h0b5d90d]
次に各画面ごとのクエリを追加していきます。クエリは スレッドグループを右クリックして
 追加 > サンプラー > HTTPリクエスト
で追加します。

#ref(05sampler.png)

サンプラーの画面では
-パス(URLのコンテキスト以下)
-GETかPOSTか
-クエリのパラメタ

などを指定します。たとえば下の例だとリクエストパスを /stressTest/index.do と指定しています。メソッドはGetです。

#ref(06sampler.png)


別のサンプラも作ってみます。ログイン画面表示後の次のアクションであるログイン処理のサンプラを作成します。下記のようにスレッドグループの下に[[ログインアクション>http://www.masatom.in/cgi-bin/viewvc.cgi/trunk/stressTest/source/nu/mine/kino/stresstest/LoginAction.java?root=Others&view=co]]を追加しました。このログインアクションはクエリとして userid,password を取るので「リクエストで送るパラメータ」の欄にパラメタとして追加してあります。パラメタの値は可変である場合が多いですが、サンプルは固定で問題ないのでと、りあえず固定で値hoge,fugaを設定しています。

#ref(07parameter.png)


ここまでで一度実行してみます。JMeterのメニューから
 実行 > 開始
でストレステストが開始されます。サーバのログなどを見ると負荷がかけられているのが分かると思います。


***計測結果をみてみる [#v36eef60]
先ほどサーバに負荷をかけしましたが、レスポンスタイムやスループットがどれくらいでているかはリスナーという機能で見ることができます。スレッドグループを右クリックし
 追加 > リスナー > 結果を表で表示 or 統計レポート 
でリスナーを追加します。

#ref(08rep.png)

これらのリスナーはいわゆるレポート機能で「結果を表で表示」はリクエストごとのレスポンスタイムを見ることができます。「統計レポート」はサンプラーごと(=画面ごと)の平均((平均や最小、最大ほか))レスポンスタイム、スループットなどを見ることができます。

-結果を表で表示
#ref(09table.png)


-統計レポート
#ref(10stat.png)


***戻り電文をアサーションする [#e429ae02]
次は戻り電文のアサーションをしてみたいと思います。アサーションは、想定しているhtmlが返ってきているかどうかを確認するために用います((ホントにログインできてんのかな??とかをチェックできますね))。

使い方ですが、アサーションしたいアクション(サンプラ)で右クリックし、
 追加 > アサーション > アサーション
で追加します。

#ref(11assertion.png)

アサーションの画面ではどのようなアサーションを行うかを指定します。下の例では、ログイン後に返ってくるhtml内に「ログインできました!」という文字列が含まれているかどうかをチェックしています。

#ref(12assertion.png)

これでテスト実行しましょう。アサーションの結果は先のリスナ「結果を表で表示」で確認することができます。パスワードなどが間違ってて、戻りhtmlに「ログインできました!」という文字列が含まれていなかった場合は、ステータスが「!」などになるわけですね。

#ref(13ok.png)
アサーションOK。の場合。



#ref(14ng.png)
アサーションNG。の場合。




***トークンなど、前画面の値をリクエストにセットする [#gc45366b]
続いてログアウトのサンプラを追加したいと思いますが、先の通りログアウトアクションはトークンチェックをしています。具体的にはパラメタとして
 org.apache.struts.taglib.html.TOKEN=hogehoge
を取り、ここに前画面つまりログインアクションの戻りhtml内の
 <a href="/stressTest/logout.do?org.apache.struts.taglib.html.TOKEN
           =7704e3e689f49ec91f539f083da60de2">ログアウト</a>
の値を設定する必要があります。ようするに「直前のサンプラの戻り電文内のリンクタグから値を取り出す」必要があるわけですね。


ログアウトアクションのサンプラを作成したあと、正しくログアウトができてることを確認するためアサーションも追加します。正しくログアウトできたら「ログイン画面へ」という文字が含まれたhtmlが返却されるので、それをアサーションすることにします。

#ref(15assertion.png)


もちろんこのままだとトークンがパラメタに載らないため、[[ログアウトアクション>http://www.masatom.in/cgi-bin/viewvc.cgi/trunk/stressTest/source/nu/mine/kino/stresstest/LogoutAction.java?root=Others&view=co]]ではエラーとなります。


さて前画面の値をリクエストにセットするには「HTMLリンクパーサ」という機能を使用します。ログアウトアクションで右クリックし、
 追加 > 前処理 > HTMLリンクパーサ
とします。

#ref(16htmlLinkParser.png)

ログアウトアクションにHTMLリンクパーサが追加されました。次にこのログアウトアクションはパラメタにトークンを取るので
 org.apache.struts.taglib.html.TOKEN=.*
をパラメタに追加します。

#ref(17parserParam.png)


また、トークンはJ2EEセッションがつながっている必要があるため、Cookieを送出するよう設定を追加します((まあURLRewritingの場合もあり得るわけですが、、。))。追加方法はテスト計画を右クリックし
 追加 > 設定エレメント > HTTP クッキーマネージャ
でOKです。


#ref(18Cookie.png)


これでリクエストすると、、、、確かに前画面のhtmlリンクから値を取り出し、パラメタにトークンが載るようになりました!




**ユーザ定義の変数をつかう [#e4f59b7b]


**戻り電文の任意の値を次のリクエストにセットする [#lf5719c5]
先ほどは、前画面の戻りhtmlのなかの特定のリンクタグからパラメタを取得するというやり方を説明しましたが、次はもっと汎用的に(以下書き途中、、、、)。


**ID/PASSなど、可変な値をリストファイルからセットする [#q3b56c65]


**オペレーションを自動記録する [#xb011c59]
今まで手動でサンプラー(リクエスト)を作ってきましたが、実はJMeterをプロキシサーバにして、リクエスト・レスポンスを自動的にキャプチャすることができます。これをすれば上り電文のパラメタとかいちいち設定する必要がなくて、とても便利そうです。


***プロキシサーバの追加 [#i1cd78f4]
ワークベンチで右クリックして、
 追加 > Non Test エレメント > HTTP プロキシサーバ
でプロキシサーバを追加します。




**XML-RPCのようなkey=value形式でないクエリを送信する [#lbb9d23b]




**関連リンク [#u0c0b76c]
-[[JMeter - Apache JMeter>http://jakarta.apache.org/jmeter/]]
-[[JMeter(高機能/フリーなテストツール)第1回:JMeterの基本>http://www.stackasterisk.jp/tech/engineer/jmeter01_01.jsp]]
-[[JMeter(高機能/フリーなテストツール)第01回:JMeterの基本>http://www.stackasterisk.jp/tech/engineer/jmeter01_03.jsp]]
-[[JMeter-TECHSCORE->http://www.techscore.com/tech/ApacheJakarta/JMeter/index.html]]
-[[[jmeter] - marsのメモ>http://d.hatena.ne.jp/masanobuimai/searchdiary?word=*%5Bjmeter%5D]]
-[[テスト・スクリプト改善のヒント - ITアーキテクト [IT Architect]>http://www.itarchitect.jp/methodology_and_design/-/39302-1.html]]
-[[Apache-JMeter.pdf (application/pdf オブジェクト)>http://www.jp.compaq.com/products/software/oe/linux/summary/reference/pdfs/Apache-JMeter.pdf]]

----
この記事は
#vote(おもしろかった[66],そうでもない[5])
#vote(おもしろかった[71],そうでもない[7])
- はじめまして。JMETERのXML-RPCのようなkey=Value形式でないクエリを送信する に記述がないのは、できないということですか -- [[船木]] &new{2009-04-18 (土) 18:21:12};

- コメントありがとうございます。書かなきゃと思って、追いついてない状況です(´д`;)。ものすごく前に書いた記事なので、やり方自体忘れてます。あまりお役に立てなくてすいません。 -- [[きの]] &new{2009-04-20 (月) 17:50:12};
- dCzHTVYunVptjAOhwT -- [[xyihcfgsra]] &new{2012-02-25 (土) 04:22:15};
- i4U3hs http://www.gXGTUnVS1fd7ZWMjsE7U6AzFIyR5v1OH.com -- [[m4V8KKMr]] &new{2012-03-23 (金) 15:28:08};
- A few months <a href=" http://www.bestiario.com/letras/ ">robaxin brand name</a>  An aerial photo shows a Chinese marine surveillance ship Haijian No. 66 (C) cruising next to Japan Coast Guard patrol ships in the East China Sea, near what are known as the Senkaku isles in Japan and the Diaoyu islands in China, in this photo taken by Kyodo April 23, 2013.  -- [[Isabelle]] &new{2014-09-08 (月) 21:01:10};
- I've lost my bank card <a href=" http://www.semanticweb.gr/topos/ ">motilium uk sp</a>  Former staff at Mid Staffordshire hospital trust, where up to 1,200 patients are thought to have died unnecessarily due to poor care, claimed it was blighted by a culture of fear. One staff nurse told the Francis Inquiry she had been physically threatened.  -- [[Diana]] &new{2014-09-13 (土) 09:49:53};
- 御世話になっております。Jmeterで負荷テストをおこなおうとしております。もしログオンに失敗した場合や、途中で画面遷移ができなかった場合は、結果表にカウントされるのでしょうか?それとも結果表にある「Error%」に表示されるのでしょうか?」 -- [[yoshino]] &new{2015-01-09 (金) 11:33:35};
- How would you like the money? <a href=" http://www.leevalleylions.co.uk/nexium-10-mg-for-babies.pdf ">nexium 20 mg cost</a>  Juan Pablo Montoya griped over his radio that trying to pass another car cost him position on the track. Jimmie Johnson suggested the track needed a second lane with more banking to help the cause. Denny Hamlin called passing "impossible."  -- [[Makayla]] &new{2016-06-04 (土) 21:09:07};
- What part of  do you come from? <a href=" http://robin-stevens.co.uk/is-there-a-generic-for-nexium-yet.pdf ">nexium prices walmart</a>  Yes there are a number of options available, you can set your browser either to reject all cookies, to allow only "trusted" sites to set them, or to only accept them from the site you are currently on.  -- [[Normand]] &new{2016-06-05 (日) 00:18:39};
- Not available at the moment <a href=" http://www.helicondesigns.co.uk/buy-olanzapine-online.pdf ">olanzapine 15</a>  The 21-week trial, which has opened a window into the private life and last days of the King of Pop, has put not only concert promoter AEG Live on trial but also the entertainment industry's live-performance business model, analysts say.  -- [[Kimberly]] &new{2016-06-05 (日) 04:40:22};
- Is it convenient to talk at the moment? <a href=" http://www.mertecgarage.co.uk/mirtazapine-15-mg-uses.pdf#judge ">mirtazapine 15 mg tabl</a>  "What we found follows exactly what the anthropologists have told us, and the molecular geneticists who have analyzed the human genome have told us, about where humans originated and how they spread across the planet."  -- [[Hiram]] &new{2016-06-05 (日) 05:49:55};
- How do you know each other? <a href=" http://robin-stevens.co.uk/accutane-online-uk.pdf ">buy roche accutane online uk</a>  Its UK bus unit outside London saw 4.5 per cent growth, while its buses in the city posted a 0.6 per cent drop â?? a decline that Stagecoach expects will correct as new contracts begin later in the year.  -- [[Colton]] &new{2016-06-05 (日) 07:00:32};
- I'm a member of a gym <a href=" http://www.helicondesigns.co.uk/generic-mirtazapine-cost.pdf ">remeron 7.5 mg</a>  Private placements are a relatively inexpensive way ofraising funds, and thus a key source of capital for smallcompanies. Making it easier for investors to participate couldboost the funds available to junior miners, buttressing Canada'sreputation as a center of mining finance.  -- [[Irvin]] &new{2016-06-05 (日) 08:10:58};
- I wanted to live abroad <a href=" http://thetravelteller.com/flagyl-metronidazol-400mg-bula.pdf ">metronidazole 500mg used for yeast infections</a>  Under the bill passed by the Senate, foreign labor recruiters for the first time would have to register with the U.S. government. They would have to post a bond and open themselves up to the jurisdiction of the American court system for visa-holders who feel they've been mistreated. <a href=" http://www.earforce.nl/mail-order-lipitor.pdf#giant ">lipitor order</a>  The timing of his condemnation of the American-led alliance was particularly sensitive. It coincided with the 12th anniversary of the Nato mission to eliminated the Taliban and al-Qaeda in Afghanistan.  -- [[Colby]] &new{2016-06-05 (日) 22:54:53};
- It's serious <a href=" http://www.thestartupplaybook.com/buy-misoprostol-online-usa.pdf#alter ">buy misoprostol uk</a>  Mr Stockil "is one of Africa&#039;s great conservation pioneers, who long before many others recognised how critical it is to engage local communities in the conservation of their natural heritage," one of the Tusk Conservation Awards judges said. <a href=" http://www.morpho-b.com/cheapest-clomid-uk.pdf#shove ">buy cheap clomid online + uk</a>  Manny Ramirez was the MVP, and Derek Lowe won the clincher, as he had in all three playoff series. Schilling won Game 2 with an ankle injury that left him with a now-famous bloody sock, and a whole region finally got the championship it craved.  -- [[Corey]] &new{2016-06-06 (月) 01:14:29};
- I'd like to tell you about a change of address <a href=" http://bijou-vrouwengroep.nl/terbinafine-costs.pdf ">buy lamisil tablets australia</a>  â??It is not unknown or even rare for serial killers to engage in a series of killings, which qualify as serial murders, and they do stop â?? either because they have no more opportunity or because they deal with the root cause of why they kill in a different way,â?? McClain said. <a href=" http://www.swveterans.org.uk/flagyl-cream-price.pdf#stable ">obat flagyl forte 500 mg</a>  Several visitors to the polo grounds on Sunday said it was &#8220;wonderful&#8221; to see Prince William on the pitch and one joked he probably had a &#8220;helicopter on stand-by&#8221; should any news from the Duchess arrive.  -- [[Trenton]] &new{2016-06-06 (月) 02:24:20};
- A First Class stamp <a href=" http://locktonaustralia.com.au/fluticasone-propionate-cream-005-for-eczema.pdf#harmful ">nasal spray fluticasone pregnancy</a>  A few streets away is the girls&#039; home, where I spoke to one of their young mothers in mourning. She told me her daughter was a fun-loving little girl with a bubbly character. She said that those responsible must be punished - and by that she meant the death sentence. <a href=" http://project-pop.com/order-retin-a-micro.pdf ">tretinoin cream .025 buy online</a>  You know the people who run the Jets are fixed on the Giants as much as Rex is fixed on the Patriots; know they have been going up against the Giants at a time when the Giants are bigger than they have been since the â??50s and â??60s, when they were as popular and romantic a sports team as New York has ever known, even if those teams lost five NFL title games out of six and were nearly the Buffalo Bills of their time.  -- [[Thurman]] &new{2016-06-06 (月) 05:56:07};
- Get a job <a href=" http://www.manofaranfudge.ie/albuterol-cheap.pdf ">buy generic ventolin inhaler without prescription</a>  According to the study, however, Vallejo, Calif., took three years to emerge from Chapter 9 while Central Falls, R.I., avoided a prolonged bankruptcy largely because state lawmakers approved a law guaranteeing bondholders would be paid in full. <a href=" http://project-pop.com/buy-azithromycin-250-mg.pdf ">order azithromycin 500mg</a>  The attorneys say Zimmerman's team exaggerated his injuries and that rain made the pictures of his bloodied head seem worse than they were. They also say his legal team underplayed how fit he was at the time of the shooting.  -- [[Sean]] &new{2016-06-09 (木) 14:26:15};
- How much is a First Class stamp? <a href=" http://www.grogansolicitors.ie/buy-xenical-online-south-africa.pdf#decision ">xenical to buy online</a>  Took part in a radio sports quiz he was involved in called Hells Bells and Buzzers and spent a few hours with him and the rest of the crew in The Trent Bridge Inn after the recording. A thoroughly nice bloke with no pretentions as were the others and one of those voices that can take you back to another time and place. I hope he has a long and happy retirement, will be missed <a href=" http://www.opusdesign.nl/aciphex-20mg-tab-janssen.pdf#entirely ">aciphex ec</a>  Reliever Josh Zeid escaped a seventh-inning jam by getting Peter Bourjos to ground into a double play, and Kevin Chapman got a popup from Josh Hamilton with a runner on to end the eighth. Hamilton went 0 for 4, returning to his miserable home form after the $125 million slugger went 11 for 29 over the past week.  -- [[Daron]] &new{2016-06-10 (金) 15:55:44};
- Could you give me some smaller notes? <a href=" http://phatjackslincoln.com/?amoxicillin-order-of-degradation.pdf ">order amoxicillin overnight</a>  But the deal did not require Falcone to admit wrongdoing, and it allowed him to remain chief executive of Harbinger Group. Among the sticking points for some commissioners was that the agreement did not bar Falcone from serving as an officer in a public company, people familiar with the commission&rsquo;s thinking said. <a href=" https://www.allofmyheart.co.uk/buy-indomethacin-uk.pdf ">buy indomethacin uk</a>  Connolly, 47, joined Hillshire last year after serving asthe president of Campbell North America. He has focusedfor the last year on energizing the brand, best known for JimmyDean sausages. He is trying to reach a broader and youngerconsumer base and get creative with poultry and even no-meatoptions.  -- [[Issac]] &new{2016-06-25 (土) 02:44:21};
- Another year <a href=" http://www.blogdojorgearagao.com.br/category/futebol/#dock ">srg over the counter viagra</a>  The paper â?? which a group of academics including Birmingham's Flavio Garcia had planned to publish next month â?? revealed three ways to bypass a brand of computer chip used by several auto manufacturers to fight vehicle theft.  -- [[Eduardo]] &new{2018-02-16 (金) 11:42:43};
- What's the last date I can post this to  to arrive in time for Christmas? <a href=" http://www.mens-app.es/category/salud-general/page/3/#vinegar ">viagra by mail order order viagra fedex</a>  WASHINGTON, Aug 11 (Reuters) - The father of Edward Snowden,the fugitive former U.S. spy agency contractor, has received aRussian visa and will travel there shortly to see his son, heand his lawyer said on Sunday.  -- [[Trevor]] &new{2018-02-16 (金) 11:44:21};
- How much is a Second Class stamp? <a href=" http://documentaforum.de/vorstand/ ">flomax pharmacology</a>  â??It gives me more enthusiasm to teach the kids,â?? said Santos. â??Even though there are some things that canâ??t be avoided, there are plenty of things that can. And if we teach these kids a little bit to avoid unhealthy lifestyles, I use that as personal motivation.â??  -- [[Sterling]] &new{2018-02-16 (金) 11:46:22};
- Insert your card <a href=" http://www.mens-app.es/anabolizantes-cancer-de-testiculo/ ">cialis 5 mg diario cialis peru</a>  The number of miles of transmission line remained roughly the same, suggesting new money was mostly spent on equipment to make the existing system stronger and more responsive, according to Ventyx analyst Chris Tornow.  -- [[Brian]] &new{2018-02-16 (金) 12:39:52};

#comment
#topicpath


SIZE(10){現在のアクセス:&counter;}


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