性能测试进阶之道

153 阅读2分钟

下面贴一个性能测试学习进阶路线图吧!

第一阶段:性能测试本质上就是对接口做压力测试,所以就需要先掌握一个压测工具,推荐jmeter。

需要学习jmeter的常用组件,元件,参数化策略等等以及学习如何使用jmeter对接口做压测?

第二阶段:由于图形化压测需要耗费资源,所以可以使用命令行脱离图形化进行压测增加压力。

当单机jmeter提供压力不够时,可以学学分布式压测。除此之外,jmeter还可以学下基于beanshell等三种插件方式做二次开发,面试好装逼哈哈哈。。

第三阶段:分层监控学习:简单的使用命令监控服务器cpu,内存,磁盘,网络,会指标分析。

感觉不够直观可以学习下Promethues + Exporter + Grafana的搭建进行图形化展示指标,也可以监控硬件和数据库。

除此之外,还可以学习下SkyWalking做分布式链路监控,并结合钉钉做报警机制。

第四阶段:瓶颈定位分析调优:可以分析常见性能问题,如cpu飙升如何定位到代码级别?接口响应时间过长怎么分析?

sql慢查询问题等,也可以通过工具如Arthas定位代码链路问题等等,总之到这个阶段水就比较深了,常常需要跟开发配合一起发现解决问题。

比较厉害的是,你可以定位到代码级别,直接告诉开发哪行代码有问题,应该怎么优化,给出建议。或者可以定位到一些内存泄漏等方面的问题。

第五阶段:性能测试平台开发:能做到这个阶段基本就是开发了,性能测试中的大佬了。

一方面需要懂性能测试原理,另一方面需要懂前后端开发技术栈,前端vue,后端springboot,mybatis等那套东西。

当然上面都是一些偏技术性的,初此之外,还需要懂性能测试目标制定,场景分析制定,如何制定性能测试方案?这些就需要结合公司相关业务具体分析了。

对于很多互联网大公司来说,为了更好的满足公司业务场景跟使用合作的便捷性。一般都有自己的全链路压测平台,有的是基于jmeter做二次开发,套个壳子。

有的甚至完全脱离jmeter开发自己的平台。这个就看公司需求跟成本投入了。

更多内容可以学习《测试人的 Python 工具书》书籍《性能测试 JMeter 实战》书籍