【性能测试系列】开篇:聊聊性能测试

微信搜索关注公众号:测试小工,第一时间获取最新软件测试技术文章

什么是性能测试?

性能测试,是软件测试领域的一个细分,从大的类型来划分,又分为:

  • 服务端性能测试

  • 客户端/前端页面性能测试

  • 全链路压测

如无特别指出,本文及后续文章中提到的性能测试,均是指服务端性能测试。

我们来看下百度百科对于性能测试的定义:

性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。

这句话中主要提到3个点:

  •  测试工具:

     对于服务端性能测试,测试工具主要有Jmeter,Loadrunner等。

  •  模拟各种正常,峰值及异常负载条件:

     这个点,指的就是我们性能测试场景的设计。

  •  各项性能指标:

     性能指标是我们评估软件系统的重要依据,是性能测试需要重点关注的内容,我们来看下下面一张图:

        

【性能测试系列】开篇:聊聊性能测试_第1张图片

 

为什么要做性能测试?

随着互联网行业的发展,软件系统架构日趋复杂,传统的手工测试,只能覆盖业务功能,对系统的性能,难以进行有效的评估验证。

试想一下,天猫双11,如果事先不对系统进行性能测试,而仅仅只验证了业务功能,那么,面对双11庞大的用户量,几乎可以肯定,系统会面临崩溃的风险。

复杂的系统架构和业务,庞大的用户基数,对系统质量带来了极大的挑战,同时,也对我们测试人员,提出了更高的要求,性能测试,成为很多测试人员无法绕开的一个重要技能。

我们来看下BOSS直聘上对于测试人员的岗位要求:

【性能测试系列】开篇:聊聊性能测试_第2张图片

可以看到,大量的软件测试岗位,职责要求里都会有对性能测试的要求。

性能测试现状

看到性能测试,我相信很多人都会下意识的想到Jmeter,LoadRunner等工具,这种下意识的反应,其实突出了一个点:

    许多测试人员,对于性能测试,都还停留在用工具写脚本,跑并发,并生成性能测试报告。

仅仅这样,显然是不够的的,比如:

  • 如何制定有效的性能测试目标?

  • 如何监控数据?

  • 如何定位和分析性能测试结果?

  • 如何设计性能测试场景?

    ……

性能测试真正的价值,并不在于你用工具得出的结果,而是通过对过程的监控,对结果的分析找到性能问题所在,帮助团队有效提升软件系统的性能,比如提升了多少 TPS,降低了多少响应时间,节约了多少硬件成本,等等。

主要的性能测试类型

根据不同的测试目的,性能测试可以分为多种类型:

  • 基准测试

  • 负载测试

  • 压力测试

  • 配置测试

  • 稳定性测试

  • 容量测试

我们通过下面这张图,来了解下性能测试的类型和目的:

【性能测试系列】开篇:聊聊性能测试_第3张图片

总结

性能测试作为一项非功能性测试技术,掌握好它,能够有效提升我们的竞争力,彻底摆脱传统功能测试人员只会点点点,容易被取代的弊端。

当你遇到性能问题时,不再简单的说“硬件扩容”,而是通过自己的定位,分析,发现性能问题,并协助团队进行性能调优,提升系统处理能力,你的性能测试才真正有了价值。

这一篇,你应该重点关注性能指标和性能测试类型,这对你后面开展性能测试非常关键。

 

微信搜索关注「测试小工」,第一时间获取最新技术文章

【性能测试系列】开篇:聊聊性能测试_第4张图片

 

 推 荐 阅 读 

福利 | 领取Jmeter性能测试视频教程

测试开发系列 | 测试开发技能树

测试开发系列 | 浅谈CI/CD体系

自动化测试 | 一文搞懂如何选用自动化测试方案

测试必须懂 | 理解Cookies和Session

你可能感兴趣的:(性能测试,软件测试)