一、并发测试
概念:多线程在单位时间内同时发起单次请求,观察响应时间
基础线程组(强调单位时间的并发,不存在绝对并发)==》加定时器集合点Synchronizing Timer
二、负载测试
概念:持续不断的增加压力(并发用户/每秒请求),观察tps和响应时间的变化趋势,找到瓶颈点(性能衰减点)
并发用户模式的负载:不断增加并发用户数,发现瓶颈
吞吐量模式的负载:
1)吞吐量模式有两种。一种是TPS,一种是RPS。前者用来设计业务量模型,后者用来控制压力引擎。我们在用吞吐量模式设计负载场景的时候就有2种方法,持续的增加TPS和持续的增加RPS
但是tps用来衡量服务端的性能,是有上限的。也就是说我们持续增加的负载不可能超过服务端的吞吐量上限阈值
2)rps模式负载:加入jp@gc - Throughput Shaping Timer定时器,不断增加每秒请求数(rps)对服务端施压,发现tps瓶颈
3)TPS模式负载:添加bzm - Free-Form Arrivals Thread Group线程组,60s内将tps均匀的提升到800,通过tps的提升观察平均并发数和响应时间的变化
并发用户模式阶梯加压负载:持续不断地增加负载,发现性能瓶颈(阶梯加压线程组,Concurrency Thread Group)
混合业务负载测试:通过设置每个接口的权重来控制每个接口的请求数,bzm - Weighted Switch Controller
三、基准测试
1)基准并发 ==》设置1个现场组,迭代100次,看对应的tps和接口响应时间,错误率
2)基准负载
用并发基准点做一次简单的脚本测试,得到一个基线,为下一次的回归做理论依据
四、压力测试
概念:tps瓶颈点上持续负载
稳定性压力测试:脚本以最大压力的80%做持续运行(1h,1d,1w)
破坏性压力测试:不考虑服务器的稳定性,直接以极限压力测试,目的是破坏服务器,直接找到异常(内存溢出,超时)
阶梯式压力测试:逐渐增加测试负载,如每5s钟增加100个并发数,高负载情况下持续运行一段时间,然后再逐渐降低负载,构成一个梯级的测试场景 ==》jp@gc - Stepping Thread Group用这个线程组,默认每隔30s启动10个线程,一共启动100个,到底100并发持续1分钟,并且需要添加beanshell脚本,查看线程区间1-20,20-40,...100不同阶梯压力下的性能数据变化趋势
失效恢复测试:系统在出现异常之后,能否及时恢复
容量规划测试:根据未来的业务增长量来进行扩容,比如业务20扩到30万,高峰时间段运行2小时
五、spike测试
在性能测试中属于压力测试的一个子集。指的是在某一瞬间或者多个频次下用户数和压力陡然增加的场景。常见的场景:12306开始售票时用户急剧增加,网站公布高考成绩、录取分数时,用户急剧增加
测试spike场景可以用:Ultimate Thread Group(终极线程组)
标签:sir,负载,多测师,并发,线程,测试,tps,100,杭州 From: https://www.cnblogs.com/xiaoshubass/p/16951880.html