什么性能测试:
是用一定的技术工具,找出或验证某些性能指标值的测试
为什么要使用工具呢,因为人工成本高,需要n多个人,所以使用工具来模拟多个人
在项目、某个接口从来没有做过性能测试时,要获取性能指标值作为基准值(也就是说第一做出来的结果作为第二次的基准值,如第一次能支持60个并发用户,第二次能支持70个并发用户,那第二次的性能就有所提升)
负载测试:
逐步增加并发用户数,发起请求,找到系统的拐点区间
关键词:逐步加压
负载测试 == 得到指标区间(经过负载测试得到了并发用户数是90-100)
性能测试 == 准确得到性能指标值(经过性能测试得到最大并发用户数是97,得到对应的系统指标值,如响应时间、TPS、吞吐量等等)
负载测试 + 性能测试 = 性能测试报告
一般的中小企业的一个接口50个并发就差不多了,大企业的就不说了,没有比较
压力测试:
通过一定并发用户数,持续比较长的时间请求,查看服务器的稳定性
关键词:比较大的压力+比较长的时间*24
压力测试持续的时间多久比较好呢,以前都是24的倍数,不过现在有所降低了,因为现在的企业版本迭代的比较快,所以都是以小时来作为单位了,比如晚上6点下班,运行到第二天早上上班时间,大企业可能就是以24的倍数来做性能测试
领导通常说的做压测,指的并不是压力测试,而是负载测试 + 性能测试 + 压力测试 = 测试报告
性能测试的前提:
1.性能测试的必要性研究(关键项评估)
- 主管部门,监管部门审查
- 涉及生命财产安全
- 大型新系统
- 核心系统
- 架构调整
- 业务剧增
- 重大缺陷修复
2.可测性(可以量化为性能指标值)
性能测试的基本原则:
先单接口,再多接口 --> 多接口构成业务/模块 --> 多业务混合 --> 再系统 --> 全链路(细化也就是一个业务流)
性能测试的必备条件:
- 独立服务器(比方说功能测试跟性能测试用的是一台服务器,当性能测试导致服务器宕机了,那功能测试也无法进行了)
- 独立网络,有线网络,最好不要用无线网络(性能测试会有大量的数据占用服务器资源,占用带宽,可能就会影响其他人或受其他人影响)
性能测试主要指标:
- 并发:狭义:同一时间做相同事情,广义:同一时间做不同事情,混合场景
- 并发数:单位时间内向服务器发起请求的用户数
- 并发用户数:用于模拟真实用户向服务器发起请求的性能测试虚拟用户数量
- 系统用户数:只要访问过系统的用户,可能含一次性访问的用户
- 在线用户数:当前正访问系统的用户,不一定有压力
- 响应时间:从发起请求到收到请求响应的时间,网络传输时间T1、T4,服务器处理时间T2、T3

- TPS(Transaction Per Second) -- 最主要的性能指标:服务器每秒通过事务数(注意:这个指标是测出来的,不是计算出来的)
- QPS:服务器每秒查询事务数
- 吞吐量/吞吐率(事务/s Kb/s)-- 衡量网络的重要指标
- 资源利用率:CUP,内存,磁盘,I/O
举个例子:上下管子一样粗的情况下,进水与出水一样的,这就说明网络环境很好,服务器处理能力等于吞吐量,当上边的管子要粗一些,下边的管子要细一些,这样水槽里的水会慢慢上升,这样TPS的处理能力就不等于吞吐量,这就说明网络环境可能有问题

本文详细介绍了性能测试的概念、目的及实施步骤。从负载测试、性能测试到压力测试,阐述了如何确定系统的性能瓶颈并评估其稳定性。适用于软件开发团队进行性能优化。
288

被折叠的 条评论
为什么被折叠?



