用RunnerGo平替JMeter?这个测试平台确实可以!

这个是一篇性能测试的文章,但是我这边暂时没有性能测试的视频版本,我这边先给大家推荐一套Python接口自动化测试视频版的教程!

B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibiliB站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1、接口自动化之为什么要做接口自动化、2、接口自动化之request全局观、3、接口自动化之接口实战等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337.search-card.all.click

1、前言

目前在性能测试领域市场jmeter占有率非常高,主要原因是相对比其他性能测试工具使用更简单(开源、易扩展),功能更强大(满足多种协议的接口),但是随着研发协同的升级,平台化的性能测试工具更能高效的基于团队开展协作,比如今天要说的这个开源测试平台RunnerGo。

2、性能测试工具平台化优势

RunnerGo作为web平台能在线做到接口管理,脚本编辑,场景编辑,报告管理这是jmeter这种工具不具备的。

RunnerGo支持实时查看服务器状态、测试报告、debug日志并且支持发送测试报告到指定邮箱,而jmeter默认不支持性能监控,只能是在GUI模式下,通过扩展监听器插件来实现,并且No-GUI模式下只能生成结果报告。

在使用jmeter时接口管理和性能测试一般是分开去做的,或者用其他Api调试工具去做接口管理(比如Apipost)然后再去jmeter中配置脚本,但其实性能测试应该是基于接口管理的基础上做的,RunnerGo可以直接从接口管理中引用调试好的接口,配置好一条场景,然后在此基础上进行持续性测试,自动化测试,这样在接口测试阶段就可以直接执行性能测试。

3、RunnerGo与jmeter结构分析

jmeter的单机模式在一般的压力机配置下,会受限于jmeter自身的机制和硬件配置,最多可以支持几百至一千左右的模拟请求线程。想部署分布式集群测试会带来非常多的运维管理问题。同时,Master-Slave模式,还会给主节点带来很大的交互压力,部署大规模的分布式集群压测非常难做到。

 RunnerGo自带分布式结构轻松支持大规模并发。

对于RunnerGo的真实性能我做了一个小的实验进行对比,结果如下:

一条使用查看新闻的场景:六个接口,使用并发模式,20的并发,执行10分钟。

相同的配置下进行压测

jmeter聚合报告:

RunnerGo直接发送到邮箱的测试报告:

由于计算方式不同这里只对比总请求数,汇总下来:

RunnerGo总请求数:98640个,错误率:0

jmeter总请求数:91219个,错误率:0

综上所述RunnerGo在结构、性能上都优于jmeter,并且顺应互联网工具平台化趋势。平替jmeter确实不是说说而已。

4、RunnerGo的安装

1、如果测试公网接口,可以使用saas:

https://saas.runnergo.com

2、如果使用开源版自己部署,可以参考:

https://wiki.runnergo.cn/docs/42

注意:如遇到自己部署后压测提示“资源不足”的情况,是压力机配置有些低,建议使用8C16G配置主机。

当然RunnerGo也有一些需要改进的地方:对我个人来说,RunnerGo目前只支持http协议的性能测试,不支持连接数据库,协作功能也没有那么完善等等,这边也希望他们能尽快迭代产品,让RunnerGo更强大。最后附上官网和开源链接供感兴趣的小伙伴了解~

官网链接:

https://www.runnergo.com

GitHub地址:

https://github.com/Runner-Go-Team/

Gitee地址:

https://gitee.com/Runner-Go-Team

猜你喜欢

转载自blog.csdn.net/caixiangting/article/details/129627169