1.kubemark
k8s开源性能工具,提供k8s大规模节点的mock能力
2.WireMock
- 工具介绍:开源的Mock工具WireMock http://wiremock.org/ WireMock 是一个灵活的API mock工具,其方便快捷,稳定鲁棒和广泛使用的通用测试工具。
- 功能描述:
- 接口mock、请求验证、单测、可编辑API、录像和回放、异常注入、代理
- 使用场景:(以下为当前已使用到的场景,大家还可以充分挖掘)
- Mock接口的快速实现。
- 功能测试中的异常模拟。
- 功能测试中的验证检查。
- Mock模块的快速录制搭建。
- 单测覆盖率提升&效率提升。
Github:https://github.com/tomakehurst/wiremock
3.jmeter
- 功能测试:通过测试脚本和assertions来验证程序是否返回所期待的值;
- 性能测试(压力/负载测试):模拟大量负载用以测试对象的健壮性,且具备分析不同负载下的整体性能的能力;
https://github.com/jmeter-maven-plugin/jmeter-maven-plugin
https://github.com/yangengzhe/JMeter
https://github.com/cheongwen/jmeterTestTools
https://github.com/jmeter-gradle-plugin/jmeter-gradle-plugin
https://github.com/wang153723482/testing_platform
4.goreplay
copy线上流量,用于异常演练、性能测试。
一、功能描述:goreplay是一款从生产环境copy流量到测试环境的工具,简称 gor
二、使用模式:监听服务器请求并捕捉http流量,把捕捉到的流量发送到重现服务器上或者保存到文件中,重现服务器再继续把流量发送到一个指定的ip地址。
三、使用场景:包括但不限于以下场景
-
支持 HTTP 请求的录制和重放,可以在线上录制请求,在测试环境进行重放。
-
支持 HTTP 层面的流量过滤,可以只挑选我们感兴趣的流量。
-
支持请求放大,用于性能测试。
四、github地址:https://github.com/buger/goreplay
五、下载地址:https://github.com/buger/goreplay/releases
使用参考:https://www.jianshu.com/p/858b5099a193
5.psrecord
支持性能测试记录进程CPU、内存情况,并可做图形化展示
- 基本信息:psrecord是一个使用psutil库来记录进程CPU和内存使用情况的小程序。
- 工程信息:github:https://github.com/astrofrog/psrecord
- 文档信息:
- 记录某进程CPU和内存使用情况:psrecord 1330 --log activity.txt
- 记录某进程CPU和内存使用情况,并生成统计图片:psrecord 1330 --log activity.txt --plot plot.png
- 记录某进程CPU和内存使用情况:psrecord 1330 --log activity.txt
6.ngrinder分布式压测平台
支持分布式大规模压力测试 https://www.jianshu.com/p/834f65dc6818
工具介绍:
- ngrinder是github开源的分布式压力测试平台;
- 由一个controller和多个agent组成,controller负责脚本编写&存储、任务配置&发送、结果统计&展示,agent负责发送压力,单agent支持3000并发发压;
- 支持java语言编写脚本;
功能描述:
- 提供web页面配置测试压力和展示测试结果。
- 任务配置支持配置进程 or 线程粒度发压,支持渐进式加压,支持限制测试总时间 or 限制总请求次数;
- 结果展示可展示平均qps、峰值qps、平均时延、错误率等指标,并可持久保存测试报告;
- 支持在线编写测试脚本,支持@BeforeProcess、@BeforeThread 、@Before等前置任务,可在进程前、线程前、case前执行前置任务。
使用场景:
- 支持http、mqtt、grpc等接口性能压力测试;
【工具信息】
开源工具:https://github.com/naver/ngrinder
持续补充中。。敬请关注