作者:我想去海边6_414 | 来源:互联网 | 2023-08-12 14:05
性能测试(广义):用一定的技术工具,找出或验证某些性能指标
性能测试的目的:
1、找出性能的指标值(最大并发用户数/rt/tps/资源利用率等)
2、验证性能有没有优化
性能测试的基本原则:
单接口 ---> 多接口 ---> 多接口构成业务/模块 --- 多业务混合 ---> 系统 ----> 全链路
负载测试、性能测试、压力测试的区别:
负载测试:逐步增加并发用户数,发起请求,找到我们系统的拐点区间
性能测试:根据负载测试得出的最佳并发数用工具测试得出最佳性能值
压力测试:通过一定的并发用户数,持续比较长的时间请求,查看我们服务器的稳定性
注:压测≠压力测试,如果需要做压测,需要问清楚具体需求
一、性能测试的必要性研究-----关键项评估
1、主管部门、监管部门审查
2、涉及生命财产安全
3、大型新系统
4、核心系统:如用户使用量最大的项目,最挣钱的项目,正在推广的项目
5、架构调整
6、业务剧增
7、重大缺陷修复
二、可测性
可以量化为性能指标的对象
三、测试环境
真正的性能测试需要独立服务器 + 独立网路
独立服务器:不可以用生产环境,避免影响到用户
不可以用测试环境,避免影响测试人员
独立网络:不可用无线,wifi不稳定,容易导致丢包;避免使用跳板机等
四、关键参数
1、并发用户数、系统用户数、在线用户数
并发用户数:用于模拟真实用户向服务器发起请求的性能测试虚拟用户数量,一定有请求
系统用户数:只要访问过系统的用户,可能含一次性访问的用户
在线用户数:当前正在访问的用户,不一定有压力,可能有请求,可能没有请求
2、响应时间
指从发起请求到收到请求响应的时间,即 T1+T2+T3+T4
网络传输时间:T1+T4
服务器处理时间:T2+T3
3、吞吐量/吞吐率(事务/s,Kb/s)----衡量网络的重要指标
tps:最主要的性能指标,整体综合处理能力
事务:可以是一个接口,也可以是多个接口完成一件事的处理能力
4、资源利用率
如cpu、内存、磁盘、i/o等使用情况