一、介绍
基于Scala 开发的开源免费性能压测工具。主要用于测量基于HTTP的服务器,比如Web应用程序,RESTful服务等。
特点:
高性能,支持Akka Actors 和 Async IO
报表帅气,支持实时生成Html动态轻量报表
支持DSL脚本,从而使测试脚本更易开发与维护
支持录制并生成测试脚本,从而可以方便的生成测试脚本
注:Gatling的测试全都是基于scala脚本的
先简单了解下它的脚本和报表
脚本
class MySimulation extends Simulation {
val conf = http.baseUrl("http://localhost")
val scn = scenario("Gatling")
.exec(http("index").get("/"))
.during(10 minutes) {
exec(
http("json").get("/json")
.check(jsonPath("$.id")
.saveAs("id"))
)
}
setUp(scn.inject(atOnceUsers(5)))
.protocols(conf)
报表
等.....
二、文件目录介绍
-Gatling_Home
---- bin
执行程序
---- conf 配置信息
---- lib
---- results
测试报告
---- target
---- user-files
用户文件
---- ---- bodies
---- ---- data
数据目录,csv参数文件存放在这里
---- ---- simulations
测试脚本(所有的脚本都在这里)
三、How to run it?
进入bin目录可以看到下面两个文件(.bat属于windows下面的可执行脚本)
gatling.sh 启动入口
依次输入以下三个参数
执行的脚本序号
本次测试Id,用作测试报告命名前缀,不能包含空格,特殊字符,中文等
本次测试描述(非必须),会显示在报告头部
record.sh
UI操作,它主要用于将浏览器配置代理后记录用户操作然后生成测试脚本,更多的用于用户行为模拟测试,个人用的不多,如果有兴趣可以参阅官方文档
http://gatling.io/docs/2.2.0/quickstart.html#using-the-recorder
四、Do it!
首先肯定是要下载它
如果还是不会下载的话直接点该路径
如果还是不能下,那我就.........
解压并进入到bin目录下运行sh gatling.sh(linux环境下)
上面列出的就是官方自带的测试脚本样例,我们试着跑下。
依次输入0、 my_first_gatling、 首次运行gatling。
显示上面的信息表示测试程序已经运行完成,最后一行显示的是本次的测试报告,可以打开瞅瞅,风骚的报告自己体会吧,首次介绍就先到这里了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。