最近j接触到一款功能非常强大,使用简单的性能测试工具:RunnerGo,说说我的看法和使用感受。
RunnerGo是基于go语言开发的轻量级性能测试平台,支持接口管理、自动化测试、性能测试等功能。更重要的是,RunnerGo完全开源。
RunnerGo官网地址:https://www.runnergo.com
GitHub地址:https://github.com/Runner-Go-Team/runnerGo
Gitee地址:https://gitee.com/organizations/Runner-Go-Team/
下图为RunnerGo首页的数据大屏。
RunnerGo到底怎么样?过去一直用的是jmeter,经过一顿试用后发现:RunnerGo的确解决了过去日常工作的一些痛点问题:RunnerGo资源占用少、操作可视化更简单、功能更直接、流程更清晰。具体主要有这几点:
1、运行速度更快,更节省资源
RunnerGo采用的go语言研发,相较于jmeter,RunnerGo更节省服务器资源,运行速度更快。小编还专门做了个对比(简单的一个小压测)
在同一台机器上分别在RunnerGo和jmeter中配置10个并发跑20轮次:
jmeter生成的聚合报告:
RunnerGo生成的报告:
jmeter吞吐量(TPS)在279左右,RunnerGo的每秒请求量(QPS)在430左右
同时,Jmeter运行期间占用的CPU资源比RunnerGo高了将近3倍!
2、报告更全面,并支持实时查看测试报告
之前做性能的时候想看测试报告不是配置太麻烦就是报告太简陋,当时就想:为什么就没有一款报告全面,测试完直出的性能测试工具呢?现在看来,RunnerGo不仅解决了这个问题而且更加完善!用RunnerGO做性能时你可以实时查看debug日志、压力机情况、测试日志,而且测试结束后还可发送测试报告至指定邮箱,各种功能内置!
■ RunnerGo性能测试实时测试报告:RunnerGo支持实时查看debug日志、压力机情况、测试日志,测试结束后还可发送测试报告至指定邮箱中。
RunnerGo性能测试时实时测试报告:
可视化场景配置,业务流程更直观
小编之前碰到业务场景复杂的项目又得用jmeter写性能脚本的时候写到一半回头一看,眼睛都有点花,差点忘了是自己写的,看到RunnerGo真的是感叹:还有这种操作?连一连就做好了?直接放图!
这是用RunnerGo配置的一条登录场景:根据随机值进入登录页面和注册页面,复杂场景配置起来更简单。
无需下载插件,内置支持5种压测模式
RunnerGo不愧是国产团队自研工具,生怕功能不够多、不好用。直接内置多种压测模式,想起小编第一次用jmeter模拟阶梯场景时又是装插件又是找攻略真的泪目啊,直接放图!
使用jmeter时需要下载插件:
RunnerGo内置压测模式一键选择:
还有就是RunnerGo是分布式结构~附上流程图:
RunnerGo作为性能测试领域的晚辈相比Jmeter、loadrunner等老牌性能测试工具还是有些欠缺的地方的,比如:Runnergo目前只支持http协议,而jmeter支持的协议更全。
不过,作为新生代的性能测试工具它也在性能测试领域做出了一些突破,RunnerGo要走的路还有很长,期待它能在巨人的肩膀上让性能测试迈上新的台阶。