可以预见以后性能测试工具市场也就剩这三款工具是主流了,绝对主力目前还是Jmeter,至于其它OpenSTA、Locust、Gatling这些开源工具影响力过小忽略不计,而Loadrunner在商用工具市场还有一定影响力(市场份额逐年缩小),阿里云PTS在云压测市场(国内)也开始有影响力。可以说,开源化和工具免费是大势所趋,很多性能测试平台和云压测平台也是基于开源的工具进行集成开发和改造,收费的部分也是基于云服务或压测流量收费。
1、Loadrunner
- 基于UI操作,容易上手。早期很流行,功能强大,但是太笨重,安装很麻烦。
- 不开源,扩展性不高,收费贵。往后的方向肯定是客户端工具逐步向平台化发展,所以已经慢慢被替代了。
2、JMeter
- 基于UI操作,容易上手,但是编程能力较弱(使用beanshell脚本语言)。
- 其次JMeter基于线程,单节点模拟数千用户几乎不可能。支持平台化集成,也诞生了一些开源平台,如MeterSphere
3、nGrinder
- 单节点支持3000并发、支持分布式、可监控被测服务器、可录制脚本、开源、平台化。
比较点 | JMeter | Ngrinder | LoadRunner |
---|---|---|---|
实现语言 | Java | java / python | java / VB / C / .NET |
使用方式 | C/S或Command或API集成调用 | B/S | C/S 或 B/S |
支持分布式 | master/slave | controller/agent | master/slave |
资源监控 | monitor/plugin,如果二次开 发,可查看第三方plugin的源码 |
monitor方式,有直接可用的源码 | 自带资源监控功能 |
社区活跃度 | 文档完善 | 有中文社区 | 网上资料和相关培训很多,购买正 版还可以得到技术支持 |
是否需要 使用编码 |
基本不需要,Beanshell | 需要,Jython / Groovy | 需要,C / Java / VB |
脚本的维护 | 本地 | 内置SVN | 本地 |
脚本录制 | 可通过代理录制、BadBoy录制 | 可通过PTS插件进行录制 | 自带录制功能 |
可扩展性 | 可增加plugin,可扩展开发, 输出结果可以再加工 |
可增加plugin | 通过扩展函数库实现 |
安装 | 简单,解压即可 | 简单,可以下载安装包或绿色包解压 | 安装包比较大,安装繁琐 |
平台化 | 有开源或云端的压测平台 | 本身具备 | 无 |