测试工具gatling(加特林)
在学习Webflux响应式编程的过程中偶然听到了gatling这个负载测试工具,并且看着很简单。之前有听说过loadrunner和jmeter,并且使用过wrk这个小工具,但是没有一个详细完整的报告。因此看到这个工具的时候,就花了点时间在网上找资料学习了一下。这个文档只是为了记录我的学习过程。我是开发人员,因此不会关注太细,如有问题,请指正。
1、使用方式一
2、使用方式二
方式二使用的maven进行测试,个人觉得这种方式更适合,代码可调试。比下载工具方式更简单
- 使用idea下载scala插件
- 下载完成新建maven项目,如图配置
最新参见:Maven Repository: io.gatling.highcharts » gatling-highcharts-maven-archetype
1
2
3
|
GroupId:io.gatling.highcharts
ArtifactId:gatling-highcharts-maven.archetype
Version:3.0.2
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
├── pom.xml
├── src
│ └── test
│ ├── resources
│ │ ├── bodies
│ │ ├── data
│ │ ├── gatling.conf
│ │ ├── logback.xml
│ │ └── recorder.conf
│ └── scala
│ ├── BasicSimulation.scala //源码文件
│ ├── Engine.scala //执行文件
│ ├── IDEPathHelper.scala
│ └── Recorder.scala
└── target
|
- 不使用artifact直接使用插件
如下:
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
30
31
32
33
34
35
36
37
38
39
|
<dependencies>
<dependency>
<groupId>io.gatling.highcharts</groupId>
<artifactId>gatling-charts-highcharts</artifactId>
<version>3.0.2</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>io.gatling</groupId>
<artifactId>gatling-maven-plugin</artifactId>
<version>3.0.2</version>
<configuration>
<simulationsFolder>src/main/java</simulationsFolder>
<simulationClass>com.scemsjyd.BaseSimulation</simulationClass>
</configuration>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<jvmArgs>
<jvmArg>-Dgatling.http.ahc.connectTimeout=6000000</jvmArg>
<jvmArg>-Dgatling.http.ahc.requestTimeout=6000000</jvmArg>
<jvmArg>-Dgatling.http.ahc.sslSessionTimeout=6000000</jvmArg>
<jvmArg>-Dgatling.http.ahc.pooledConnectionIdleTimeout=6000000</jvmArg>
<jvmArg>-Dgatling.http.ahc.readTimeout=6000000</jvmArg>
</jvmArgs>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
|