前言
刚开始,以为做性能测试,就是做些脚本、参数化、关联,压起来之后,再扔出一个结果。
但实际上不止这些内容,还要加上性能分析,关注调优之后响应时间有多大的提升,TPS 有多大的提高,资源有多少的节省
我们努力的方向是完整的工程,既要有前期的测试,还要有中间的分析,以及最后的调优,而不仅仅是做做脚本。如果你想把性能测试做好,就不要局限自己的技术范围和认知范围。
无论是系统、数据库、代码、中间件、存储、网络,你遇到什么问题,都要试着去分析下该如何判断,并考虑如何在后续的过程中进行调优。
性能测试不同于功能测试,功能测试只要求软件的功能实现即可,而性能测试是测试软件功能的执行效率是否达到要求。
例如某个软件具备查询功能,功能测试只测试查询功能是否实现,而性能测试却要求查询功能足够准确、足够快速。但是,对于性能测试来说,多快的查询速度才是足够快,什么样的查询情况才足够准确是很难界定的,因此,需要一些指标来量化这些数据。
性能测试常用的指标包括响应时间、吞吐量、并发用户数、TPS等,下面分别进行介绍。
1.响应时间
响应时间(ResponseTime)是指系统对用户请求做出响应所需要的时间。这个时间是指用户从软件客户端发出请求到用户接收到返回数据的整个过程所需要的时间,包括各种中间件(如服务器、数据库等)的处理时间。
响应时间越短,表明软件的响应速度越快,性能越好。但是响应时间需要与用户的具体需求相结合,例如火车订票查询功能响应时间一般2s内就可以完成,而在网站下载电影时,几分钟完成下载的速度就已经很快了。
系统的响应