はじめに
Jmeterには便利な機能がたくさんあります。
最近周囲でJmeterでのパフォーマンステストに関して需要が高めなので
いろいろ調べてみたもののメモです。
定番:結果をツリーで表示(リスナー)
実際に投げたリクエスト、返ってきたレスポンスの詳細やステータスコードなどが
詳しくわかるリスナーです。
テストを実施してみたらエラーになってしまっている!というときに
エラー内容の調査ができます。
ただし、このリスナーはかなりリソースを食うので
本番のPT時にはOFFにしておきましょう。
エラー想定のテストには:アサーション(リスナー)
たとえば404エラーが出る想定のテストがしたい時もあると思うのです。
その場合は対象のテストのHTTPリクエストの下に追加>アサーション>アサーションで
追加して、下記のように設定します。
- Ignore Statusにチェック
- 応答コードにチェック
- パターンマッチングルールは条件に合わせて(今回は404のみなので一致でいいかな)
- テストパターンの枠の中に「404」と記入
これでまずエラーをスルーした後、404かどうかチェックして
想定外に200が出たり、500がでたりしていたら、エラーとして扱います。
エラーログで想定しているエラーを出力して真っ赤にならないようにしたいときはこれで。
具体的なTPSが決まっていたら:定数スループットタイマ(タイマ)
1分間に何サンプル実行するかを具体的に決められます。
いろんなパラメータを入れたい:ユーザーパラメータ(前処理)
参考:[JMeter][Benchmark] JMeter で動的パラメータ
これはある意味必須かもしれませんが、
リクエストパラメータを複数からランダムで指定して投げるなどの設定ができます。
csvやテキストにid等を羅列して変数に格納できます。
ランダムな数字を入れたい:Random Variable
パラメータにランダムな数字を入れていろんな値が取れるパターンの他に
キャッシュにひっかからないようにするためにも使えます。
こんな感じでValuableNameに変数名を入れておいて
HTTPリクエストの「リクエストで送るパラメータ」で
というような感じでやっておけば
リクエストURLに「rand=1234」という感じで数字が入ります。
idなどに入れたい場合は${huga_id}の部分が${RAND}になる…と。
他にもいろいろありますが…
使ってみたり調べたりしたもので
便利そうな使い方は追記していきます。
上記に書かれていたことを調べて思いましたが
だいたい下記に書いてありますです…
JMeter簡易リファレンス
ぜひご参照ください!