JMeterでJSONをPOST
最近の Web アプリの API は従来の GET によるリクエストパラメータを送信する方式ではなく、POST で JSON を送信する方式が増えてる模様。
この形式の場合、Chrome の DeveloperTools でみるとリクエストの部分が Query String Parameters の代わりに Request Payload と表示される。
JMeter で Request ペイロードを送信する方法についてまとめる。
環境
JMeter は brew install jmeter
で最新バージョンが入った。
Ubuntu の場合は apt-get だと古いバージョンだし、パスの関係でそのままだとエラーでて動かないようなので、公式から最新の tar ファイルをダウンロードしてきて展開した方がいい。
設定方法
HTTPヘッダマネージャ
あらかじめ作成したスレッドグループを右クリックして、追加>設定エレメント>HTTPヘッダマネージャ
ヘッダの名前に "Content-Type"、値に "application/json" を追加。
HTTPリクエスト
同様にスレッドグループを右クリックして、追加>サンプラー>HTTPリクエスト
サーバ名、ポート番号などは任意の値を入力。重要なのは Parameters, Body Data の部分。
ググると Parameters に値だけ書くというやり方がでてきたけど、こういう場合は Body Data のタブに切り替えて値を入れるのが正しいみたい。