参考URL

便利すぎる負荷試験テストツールGatlingの使い方~自力ソース編~ - Qiita

Gatlingとは

  • Scala製負荷試験ツールである
  • シナリオはProxy(ブラウザ操作記録)だけでなく、Scalaでも書ける
  • JMeterより新しいのでこちらをつかってみたい
    • JMeterは設定いじってる最中に不意に設定を保存しなくなるパターンをよく経験しているので、あまり好きでない1

インストール

1
2
3
4
5
GATLING_VER=2.2.3
GATLING_DIR=gatling-charts-highcharts-bundle-${GATLING_VER}
wget https://repo1.maven.org/maven2/io/gatling/highcharts/gatling-charts-highcharts-bundle/${GATLING_VER}/${GATLING_DIR}-bundle.zip
unzip ${GATLING_DIR}-bundle.zip
cd ${GATLING_DIR}
$ tree --charset=C -L 1

.
|-- LICENSE
|-- bin
|-- conf
|-- lib
|-- results
`-- user-files

Sample起動

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# 初期ビルドが走る
bash bin/gatling.sh

Choose a simulation number:
     [0] computerdatabase.BasicSimulation
     [1] computerdatabase.advanced.AdvancedSimulationStep01
     [2] computerdatabase.advanced.AdvancedSimulationStep02
     [3] computerdatabase.advanced.AdvancedSimulationStep03
     [4] computerdatabase.advanced.AdvancedSimulationStep04
     [5] computerdatabase.advanced.AdvancedSimulationStep05
0
Select simulation id (default is 'basicsimulation'). Accepted characters are a-z, A-Z, 0-9, - and _

Select run description (optional)

Simulation computerdatabase.BasicSimulation started...

================================================================================
2017-02-01 21:27:15                                           5s elapsed
---- Requests ------------------------------------------------------------------
> Global                                                   (OK=2      KO=0     )
> request_1                                                (OK=1      KO=0     )
> request_1 Redirect 1                                     (OK=1      KO=0     )

---- Scenario Name -------------------------------------------------------------
[--------------------------------------------------------------------------]  0%
          waiting: 0      / active: 1      / done:0
================================================================================
# 以下数十秒実行されるとHTMLへのパスが出力される

出力HTMLは割愛


  1. たまに設定自体が消えることもあった ↩︎