性能测试的常见策略有:基准测试、负载测试、稳定性测试、并发测试和压力测试。
一、基准测试
目的是为了建立一个标准,有一个参照物。比如:5w用户登录,响应时间为3秒,这就是一条基准。接下来,10w用户登录,响应时间为4秒,20w用户登录,响应时间为10秒......
参照物,让我们知道到底产生了怎样的变坏。
基准测试不会单独存在,为综合场景提供参考依据。
二、负载测试
用户量大,通过逐步增加系统负载,确定在满足系统的性能指标下,找出系统所能够承受的最大负载测试。
比如:
case1:模拟1一个用户,请求页面,记录运行时间;
case2:模拟5一个用户,请求页面,记录运行时间;
case3:模拟10一个用户,请求页面,记录运行时间;
case4:模拟20一个用户,请求页面,记录运行时间;
case5:模拟30一个用户,请求页面,记录运行时间;
......直到找出最大负载量,如果要求响应时间在1.5s以内,那么最大负载量就是1.5s的模拟用户数,极限负载就是服务器崩了的用户数。
三、稳定性测试
在服务器稳定运行的情况下,进行长时间1天-1周,并最终保证服务器能满足线上业务需求。
稳定运行的用户数量,就是响应时间在1.5s内的模拟用户数,可以通过负载测试获得。
四、并发测试
特点:时间段、请求量大、绝对并发。
应用场景:抢红包、秒杀、抢购等。
负载测试是相对并发,并发测试是绝对并发。
相对并发对时间要求不严格,可以先来也可以后来。决定并发对时间要求严格,几乎在同一时间。
五、压力测试
有两种方法:
1)极限负载情况下导致系统崩溃的破坏性压力测试。
2)高负载情况下长时间的稳定性压力测试。
目的是为了查看系统在极限情况下的容错能力和可恢复能力。