当前位置: 首页 > news >正文

吐血整理,性能测试总结分析,快速上手打通(一)

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)

前言

1、性能测试的测试流程

1)分析性能的需求–》需求从哪里来的?
–》① 业务和产品提出的 ② 测试提出的 ③ 客户提出的

2)执行性能测试的方案和计划,搭建性能测试环境
3)编写对应的性能测试用例 ==》设计对应的性能测试场景
4)在jmeter里面组件接口和开发性能测试脚本
5)执行性能测试
6)分析性能瓶颈,给出性能调优建议,得出性能测试报告

2、性能测试当中的并发测试,负载、压力、失效恢复测试

1)性能测试常见的类型:
并发测试,负载测试,压力测试,失效恢复测试
并发测试–》所有的用户在同一时间请求同一个接口(瞬间的)–》秒杀、抢红包

负载测试–》通过不断的增加用户和增加请求对服务器施加压力,找到瓶颈点和拐点–》比如,用100并发线程数持续加压5-10分钟
压力测试–》又称为稳定性测试、破坏性测试–》找到瓶颈点和拐点后,通过80-100%的TPS去持续进行施压30分钟,1个小时,2个小时,12个小时,24个小时等等,看看系统是否有内存泄露和内存溢出等问题

失效恢复测试==》主要是检查系统在出现故障之后,能否自动恢复到正常状态,以及恢复的过程是否正确,数据是否完整等

3、并发测试里面用户的概念

1)注册用户数 ==》50000个人注册
2)在线用户数 ==》5% ==》2500个人在线
3)并发用户数 ==》并发度1-5%*2500 ==》25=125个并发

【面试题】你在做并发测试的时候,怎么得到最佳或最优的并发用户数(并发线程数)
答:我会通过阶梯式加压的方式去进行测试,比如20-40-60-80-100-120-140-160,当接口响应时间不超过3秒,接近3秒,并且TPS最优,接口无报错,此时对应的并发线程数就是最优的并发用户数

TPS的计算公式:TPS=并发用户数/接口响应时间
注意:并发用户数并不是越高越好,并发用户数越高,带来响应时间也会增加,以及错误率也会提升

4、性能测试的指标

1)性能测试的目的:
不断的增加用户和请求对服务器施加压力,看服务器的性能表现

2)性能测试的指标
① TPS(transaction per second) --》每秒处理的事务数–》瞬间 --》可以使用jp@gc - Transactions per Second插件来监听
② 吞吐量(throughput)–》网络上行下载的数据量总和 --》是平均的TPS --》可以在聚合报告里面查看
③ QPS(query per second) --》每秒SQL语句的查询数
④ RPS(request per second)–》每秒的请求数
⑤ HPS (hists per second)–》每秒点击率
⑥ RT (response time)–》接口的响应时间

a、从客户端发送接口请求到服务器的时间 T1
b、服务器处理请求的时间 T2
c、服务器把处理好的请求返回给到客户端的时间 T3
d、客户端把接口响应数据渲染到前端页面的时间 T4
在jmeter里面的接口响应时间=T1+T2+T3

⑦ 事务
a、打开cms输入用户名和密码–点击登录 ==》这是一个事务 ==》1TPS=1QPS
b、打开cms输入用户名和密码–点击登录–添加用户–修改用户–删除用户 ==》也是一个事务 ==》1TPS=4QPS
结论:处理单接口事务的时候TPS和QPS是相等的,处理多接口事务的时候TPS和QPS是不相等的
⑧ 错误率 ==》事务的错误率 ==》不能报错

TPS是衡量服务器好坏的唯一指标,TPS越高服务器性能越好,TPS越低服务器性能越差

5、并发测试

1)相对并发测试:测试出来的数据不是很准确
2)绝对并发测试:所有的用户在同一时间请求同一个接口 ==》添加 同步定时器 (集合点)

6、单接口场景和混合场景负载测试

1)并发用户模型:不断的去增加用户数对服务器施加压力,站在用户的角度去思考问题
2)吞吐量模型:不断的增加请求出对服务器施加压力,站在服务器的角度去思考问题

单接口场景:登录接口
混合接口场景:登录接口+查询接口 ==》登录查询业务
单接口场景的TPS一般比多接口的TPS要高多

7、压力测试和性能测试需要关注的指标

1)业务指标:TPS、接口响应时间(接口平均响应时间,90%line)、错误率
2)硬性指标:CPU和内存的使用率低于70%,还有网络IO和磁盘IO

业务指标主要关注了:接口的平均响应时间、90%line、吞吐量tps(系统每秒处理事务数)、错误率
资源指标主要关注了: cpu、内存、磁盘、网络(i/o)
应用指标主要关注了:如空闲线程数、数据库连接数、GC/FULL GC次数、函数耗时等。

前端指标主要关注了:如页面加载时间、网络时间(DNS、连接时间、传输时间等)
我们当时规定的tps必须要达到270/s以上,接口的平均响应时间要小于3秒,错误率为0%,CPU和内存的使用率是需要低于70%以下的

8、通过jmeter -n -t XX.jmx -l XX.jtl -e -o ./report命令行做压测

9、性能测试结果分析和编写性能测试报告

有发参考的报告在QQ群里,自己可以去总结一下报告里面有哪些内容

10、性能测试的面试题

1)怎么找出性能测试的拐点?
答:TPS上升到最高点开始下降,响应时间开始上升的这个点就是性能的拐点和瓶颈点

2)怎么知道服务器所能承受的最大的并发用户数
我会通过阶梯式加压的方式去进行测试,比如20-40-60-80-100-120-140-160,当接口响应时间不超过3秒,接近3秒,并且TPS最优,接口无报错,此时对应的并发线程数就是最优的并发用户数

TPS的计算公式:TPS=并发用户数/接口响应时间
注意:并发用户数并不是越高越好,并发用户数越高,带来响应时间也会增加,以及错误率也会提升

3)求出最大的tps
可以使用jp@gc - Transactions per Second插件去看最高的TPS就是可以了
TPS的计算公式:TPS=并发用户数/接口响应时间

4)你们之前公司的tps能达到多少?
答:每个接口的TPS都是不一样的,增加类的接口TPS就会高一点,查询类的接口TPS就会低一点,==》800多TPS,1000多TPS

5)什么情况下TPS等于QPS?
处理单接口事务的时候TPS和QPS是相等的

6)你们在做性能测试的时候是用的单机去压测还是用的多机(分布式)
建议回答:是用的单机去压测的

7)如果不知道并发线程数数到底取多大,怎么操作?
我会通过阶梯式加压的方式去进行测试,比如20-40-60-80-100-120-140-160

完整版!企业级性能测试实战,速通Jmeter性能测试到分布式集群压测教程

下面是我整理的2026年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

二、接口自动化项目实战

三、Web自动化项目实战

四、App自动化项目实战

五、一线大厂简历

六、测试开发DevOps体系

七、常用自动化测试工具

八、JMeter性能测试

九、总结(尾部小惊喜)

人生最珍贵的不是终点站的掌声,而是追梦路上的每一个脚印。当你觉得疲惫时,请记住:钻石经过打磨才能璀璨,雄鹰经历断羽才能高飞。你的坚持,正在书写属于自己的传奇篇章!

别让任何人定义你的极限!你拥有的不是天花板,而是等待突破的起点。那些看似不可能的梦想,终将在你日复一日的坚持中变得触手可及。你,就是自己人生的造梦者!

http://www.cnnetsun.cn/news/1403596.html

相关文章:

  • Frida Hook实战:用JavaScript脚本拦截Android App的HttpURLConnection网络请求
  • 【文献阅读】MINT:让AI“学会”蛋白质对话的语言,开启相互作用预测新时代
  • 医用设备带:从基础生命支持终端到智慧医疗核心枢纽的演进之路
  • Modbus RTU 51单片机从机:轻松对接多种组态软件
  • EIT电阻抗断层成像下位机逻辑及二次开发
  • 路试不跟车,数据秒上云:CANFDLog-1000系列重新定义车载数据采集
  • 军工保密系统如何实现网页端安全截屏转存?
  • 2026年AI Agent发展趋势与挑战:从理论到实践的跨越
  • Dify自定义节点异步调度实战:从阻塞到毫秒级响应的7步性能跃迁指南
  • 手把手教你用MaxMind GeoIP数据库分析fail2ban攻击日志(附Python代码)
  • 北大数字普惠金融指数省市县2011-2024面板数据
  • C++ string 类常用接口解析(附代码介绍)
  • LA04-Abaqus嵌合体退火仿真案例教程:完全热力耦合分析的实践与解析
  • 在 OpenClaw 里一句话记账:消费说出来,账单自动进乖猫记账 App
  • 【2026 最新】一篇文章告诉你什么是Skills 同时 告别Prompt工程!用Claude Skills把AI变成你的专属打工人
  • RAG 不是记忆:深度对比RAG 与TiMem 架构差异,向量检索为何不够用
  • 电池材料行业数据管理新突破:AI4S驱动的科学数据平台正在重塑电池材料开发范式
  • 销售客户跟进频率难把握?数字员工自动定次数,不烦客户不遗漏
  • 复杂查询性能优化:连接条件下推的代价模型设计与实践
  • RHEL——NoSQL集群技术
  • OJ前端页面开发
  • PaddleOCR系列——《文本检测、文本识别》模型训练
  • LangBot:企业级即时通讯 AI 机器人平台 介绍篇
  • 【超详细】2026年OpenClaw云端零基础1分钟部署及使用教程
  • 告别机械音!Qwen3-TTS实测:97ms低延迟生成真人级语音
  • 【上位机心法】别让传感器数据卡死你的 UI!撕碎 Qt/QML 渲染黑盒,用 C++ 后端打造 144Hz 零延迟工业仪表盘
  • 小白也能玩转DeepSeek-OCR:图文并茂的部署使用教程
  • Qwen3-TTS语音合成生产环境部署:高并发流式API服务搭建实践
  • S12SD紫外线传感器在MSPM0G3507上的低功耗模拟接口移植
  • csdn访问量越来越低-----可能要做好转移数据的准备