浅谈性能测试
最近在做性能测试的东西,顺便做一些整理总结。 首先,什么是性能测试? 谈到性能测试,我们经常会听到三个概念:性能测试、压力测试、负载测试,这三个名词的含义,我们先了解一下。 性能测试 :指通过模拟真实的并发用户操作,来判断产品是否能够满足用户的需求;也是为了获得系统在某种特定的条件下(特定的负载条件下)的性能指标数据。比如:微信需要同时支持4亿个用户的接入为一个真实的用户需求,但是我们不可能真实的去接入4亿个用户,只能够通过模拟4亿个真实用户去接入,如果我们通过模拟的方式达到该目标了,就说明满足了这个需求。 压力测试: 指在一定的负载情况(资源占用、接入用户量等)下,验证产品的功能是否还能够正常运行以及系统本身是否正常。也指在什么极限情况下系统会崩溃,系统崩溃后是否具有自我恢复性。通过强负载(大数据量、大量并发用户等)下的测试,查看应用系统在峰值使用情况下操作行为,从而有效地发现系统的某项功能隐患、系统是否具有良好的容错能力和可恢复能力。 压力测试分为 高负载下的长时间 (如24小时以上)的稳定性压力测试和 极限负载情况 下导致系统崩溃的破坏性压力测试。 负载测试: 系统正常工作时所能承受的最大负载,也可称为“容量测试”。模拟实际软件系统所承受的负载条件的系统负荷,通过不断加载(如逐渐增加模拟用户的数量)或其它加载方式来观察不同负载下系统的响应时间和数据吞吐量、系统占用的资源