性能测试的一些专业概念
1. 思维差异
功能测试、自动化测试:
输出: 找bug 预期结果与实际结果进行比较
隐藏的前提:模拟都是1个用户的操作
性能测试:
不是模拟1个人,**模拟多个人同时**
关注:
多个人操作时,响应时间,接口服务器性能测试中,一定是多个人同时操作,才是性能测试
2. 性能概念
100个人同时登录接口进行登录,性能中的avgRT应该在多少,是可以被接受的?
可接受的范围 1.5s 1.5 APDEX 用户满意度指数
3. 事务:一个请求行为,并不一定只有一个接口,所以,一个事务可能是多个接口。
4. jmeter:默认情况下,1个接口请求一次,认为一个1个事务Transation。
也可以是通过事务控制器,挂载多个接口请求,合并成为1个事务。
是从发起,到网络传输,收到响应
5. 性能测试
通过工具,模拟多用户发起请求,获取**性能指标值**
用工具来模拟多个人的方式很多
线程: 使用进程的资源,来干。jmeter、lr
进程: 资源拥有者,资源消耗会比较大。LR
进程+ 线程: ngrinder
协程: python+locust
6. 性能指标:
平均响应时间 avgRT 90%
TPS: 服务器每秒处理的事务数 衡量**服务器**处理能力的最主要的指标
吞吐量:**网络**中每秒传输的事务数
1、没有网络瓶颈:tps 数值 = 吞吐量数值
2、如果网络有瓶颈: tps 数值 != 吞吐量数值
吞吐率: 每秒钟能通过多少kb数据
7. 服务器资源利用率
cpu、内存、io(数据放入放出)的利用率
8. 并发用户数:同一时间发起请求 用户数
广义并发:同一时间发起请求(相同、不相同)
狭义并发:同一时间发起相同请求
集合点:集合多个人在同一时间发起相同请求
并发用户数100 发起请求,一秒钟会发起多少请求?(请求的频率)不知道,所以1秒钟总请求量,不知道,每秒钟发起的请求数量也不知道,主要看响应时间查看请求的频率,频率为7次的话就发起700次请求。
处理的越快,处理的频率越多,性能越好。
9. 网站的关注点为并发用户数比较多,接口的关注点为tps比较多。
10. 负载测试
逐步增加并发用户数,找出最大 拐点区间
逐步增加并发用户数,区间怎么判断,有没有报错,tps下降,响应时间变长
11. 50tps: 服务器每秒能处理50个事务
50 t/s * 60 * 60 = 18w 300tps
18w * 8h = 144w
本文来自博客园,作者:Alisa-sweet,转载请注明原文链接:https://www.cnblogs.com/Alisa-sweet/p/17342580.html