性能、负载、压力测试区别
对于这几个概念总是会混淆,今天整理一下。
性能测试(performance test):(1)是系统测试的一种,属于黑盒测试。
(2)是在一定软硬件网络情况下,系统响应时间等特性是否满足需求。
(3)给定的基准条件下,能执行的最好情况。
(4)性能测试是动力
负载测试(load test): (1)数据在超负荷环境中运行,程序是否能够承载。强调的是达到的峰值指标。
(2)关注点是how much ,how fast (是载重)
(3)不同负载下的性能指标,从小负载开始,逐步增加用户数量,观察不同负载下系统所耗资源、响应时间。
压力测试(stress test):(1)大量虚拟用户向服务器产生负载,使服务器资源处于极限状态下并长时间运行,服务器是否能够正常工作。
(2)它强调的是极端情况下系统的稳定性。
(3)分为稳定性压力测试和破坏性压力测试
(4)压力测试是强度
容量测试(volume test):(1)一定的虚拟用户数运行一种或多种业务,获取不同级别服务器性能指标,已确定数据库的最佳容量和最大容量。
(2)它关注的是how much,通常和数据库有关。
我们可以用比方来理解这几个含义,譬如让运动员在操场跑圈
压力测试:给这个运动员施加外部压力,我们让这个人一直围着操场快速跑,不让他休息,不让他喝水(有点残忍哦),看看他是否会晕倒?
负载测试:单位时间内逐步增加运动员跑的圈数。譬如一分钟他能跑几圈,2分钟能跑几圈,不同单位时间内运动员跑完圈的速度和质量。
压力测试和负载测试分别能帮我们找到它的抗压能力和工作能力,也能帮我们评估一个系统的性能瓶颈和质量。