新手区 Gatling 基本使用教程

xiuxiuing · 2018年10月15日 · 2884 次阅读

1. 介绍

Gatling 是一款基于 Scala 开发的高性能服务器性能测试工具,它主要用于对服务器进行负载等测试,并分析和测量服务器的各种性能指标。目前仅支持 http 协议,可以用来测试 web 应用程序和 RESTful 服务。

除此之外它拥有以下特点:

  • 支持 Akka Actors 和 Async IO,从而能达到很高的性能
  • 支持实时生成 Html 动态轻量报表,从而使报表更易阅读和进行数据分析
  • 支持 DSL 脚本,从而使测试脚本更易开发与维护
  • 支持录制并生成测试脚本,从而可以方便的生成测试脚本
  • 支持导入 HAR(Http Archive)并生成测试脚本
  • 支持 Maven,Eclipse,IntelliJ 等,以便于开发
  • 支持 Jenkins,以便于进行持续集成
  • 支持插件,从而可以扩展其功能,比如可以扩展对其他协议的支持
  • 开源免费

2. 使用

下载解压即可使用:http://gatling.io/#/download
解压后目录结构:

├── bin
├── conf
├── gatling-tests
├── lib
├── results
├── target
└── user-files

3. 文件目录介绍

  • bin 目录下有 2 个脚本,gatling 和 recorder, gatling 用来运行测试, recorder 用来启动录制脚本的 UI 的(不推荐使用)。
  • conf 目录是关于 Gatling 自身的一些配置。
  • lib 目录是 Gatling 自身依赖的库文件。
  • results 目录用来存放测试报告的。
  • user-files 目录是用来存放测试脚本的。
  • target: 你启动运行组件后,gatling 会为你编译好所有的.scala 脚本,而编译后的 class 文件就会在这里;

当运行 gating 脚本的时候,其会扫描 user-files 目录下的所有文件,列出其中所有的 Simulation(一个测试类,里面可以包含任意多个测试场景)。选择其中一个 Simulation,然后填写 Simulation ID 和运行描述,这个都是为报告描述服务的。

4. Demo 运行

在 Gatling 的下载包里默认包含了一个 demo 示例,
在项目目录下执行 shell 命令:

/work/gatling-2.3.1 $ ./bin/gatling.sh

Gatling 会遍历user-files,列出所有的 Simulation

GATLING_HOME is set to /work/gatling-2.3.1
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,代表选择computerdatabase.BasicSimulation执行,
之后输入两次 回车,就可以开始执行了,执行完成会在results目录下生成网页报告。

Reports generated in 0s.
Please open the following file: /work/gatling-2.3.1/results/basicsimulation-1535978730687/index.html
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 0 条回复 时间 点赞
xiuxiuing Gatling 性能测试 从入门到精通 中提及了此贴 10月15日 21:08
xiuxiuing [该话题已被删除] 中提及了此贴 10月18日 14:01
xiuxiuing 专栏文章:Gatling 教程目录 中提及了此贴 10月19日 16:31
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册