本人 22 年毕业,在一家公司做着功能测试。但是想要往性能测试发展,目前自己是会使用 lr 编辑脚本、运行场景、然后查看结果图 (不会分析),监控 cpu 内存目前只了解 nmon;脚本场景自己肯定也没有完全掌握好,因为没有指导的我是拿公司的项目自己做了做。然后想要深入发展话后续性能的分析调优又是一个大头。
想要换个工作但是确实还没有找到 (因为对于现在状态薪资不太满意),内心是坚定走这条路但是知道后续的学习也会挺困难如果没有可以指导的人,非常诚恳得想问问前辈们有什么建议?关于职业发展或者是具体性能测试学习大框架/路线?谢谢!
本人经历了六七家公司,没有在一家公司看到过主做性能发展的很好的人。早期在新浪微博,有一个主做性能的大牛,最后也是越来越差,究其原因可能是如下几点,个人感觉啊!
1,性能测试需求量不大,一家公司只有发展到一定规模才比较注重性能,初中期比较关注业务;
2,性能做要做好,非常难。需要对公司使用的开发框架,中间件,架构等非常熟悉,才有可能找到性能瓶颈,给出调优建议。如果只是得到性能数据,给开发让他们去调优的话,那就没有必要主要做性能测试了,常规的性能测试工具即可。
3,性能测试硬件要求难以满足,如果测试的服务器和线上服务差别很大,或是用虚拟机来做性能测试,根本达不到效果,而很少有公司做到性能测试的服务器和线上服务器一样的配置的。
4,如果不是公司大领导关注性能,开发不会做性能优化的,出力不讨好,所以从上到下都不愿意做这个事情;
5,现在主流和性能相关的做法是做性能测试平台,全链路测试等等!
路线 在公司项目中实际参与 是学到最多的 但是 底部基础 还是需要自学 比如 学习视频 ,后期可能还需要代码能力,不可能一直依靠工具吧,而且指标和性能分析点还是要知道怎么做
本人经历了六七家公司,没有在一家公司看到过主做性能发展的很好的人。早期在新浪微博,有一个主做性能的大牛,最后也是越来越差,究其原因可能是如下几点,个人感觉啊!
1,性能测试需求量不大,一家公司只有发展到一定规模才比较注重性能,初中期比较关注业务;
2,性能做要做好,非常难。需要对公司使用的开发框架,中间件,架构等非常熟悉,才有可能找到性能瓶颈,给出调优建议。如果只是得到性能数据,给开发让他们去调优的话,那就没有必要主要做性能测试了,常规的性能测试工具即可。
3,性能测试硬件要求难以满足,如果测试的服务器和线上服务差别很大,或是用虚拟机来做性能测试,根本达不到效果,而很少有公司做到性能测试的服务器和线上服务器一样的配置的。
4,如果不是公司大领导关注性能,开发不会做性能优化的,出力不讨好,所以从上到下都不愿意做这个事情;
5,现在主流和性能相关的做法是做性能测试平台,全链路测试等等!
极客时间上性能测试实战 30 讲,算是比较好的入门课程
门槛高,天花板高,大厂需求多
专职性能的不多,我见过几个公司都是小白来干。华为这些大公司有的部门也这样,我实在不理解
所谓的性能测试,目前测试同学大多都只是完成 “施压”,分析不了原因,给不出具体优化方案(要给的话就是扩机器。。。)
上上家公司招的所谓 “性能测试专家”, 每次大促前压测完给的都是扩容建议。。。(这有啥门槛?)
看看各位大佬的见解
我看大家还都是按照没有专职的性能岗位这样的思路来回答的,这个大家说的也都没错,我就不重复了。 目前的行情是比较看中测试开发人员的综合能力的,这也是为什么大家都劝你别在性能测试上下太大的功夫。 但其实我想换一个思路来看这个问题,其实要做好性能测试的话,本身是需要比较强的综合能力的,当你把一些复杂的性能测试场景玩明白了以后,那么也就练成了一身较为不错的综合能力了。当然如果大家认为的性能测试就是用 jmeter 这样的工具对某个接口施压统计出个 TPS 这类的指标的话,那就当我没说了,因为如果负责的场景就是这么简单,那确实练不出什么有竞争力的技能。
我用一个我带的姑娘做的性能测试场景举例吧。
以上是我们这里这个妹子需要去学习的技术点,这样她才能完成她的性能测试工作。 而如果是我 曾经带过的另一个组(他们测试大数据产品的),那里的性能测试则是需要模拟大规模数据的场景 。所以他们需要学习 spark,hdfs,异步 IO 等技术。这个细节可以看我之前写的帖子:https://testerhome.com/articles/31471
总之就是其实负载的性能测试场景搞下来,也是会练成一身不错的技能的。但严格意义上来说, 这里面很多技能确实不算是性能测试技能。这个就看大家怎么看待这些事了,我个人觉得重要的不是性能测试本身,而是通过性能测试能学到什么,就像我聚的例子,我们这的这个姑娘就算以后不做性能测试了也没问题 ,因为她通过这份工作学到了 prometheus,k8s,docker,前后端开发,视频处理以及部分中间件,所以他换一家公司去做别的工作也没有问题。最后我想说的是分析系统性能瓶颈并给出优化建议这事对于测试来说不太现实,现在软件架构复杂到了已经轮不到测试人员指手画脚了,最好别妄想能指导专业的软件架构师做事情。专业的事情留给专业的人做就好。
我目前算是专职服务器性能测试吧,游戏公司,有自己的一套针对游戏业务进行场景模拟的测试理论和技术框架,能熟练完成这项工作,已经和一个熟练的服务端开发差不多了,高并发网络编程,各种协议序列化,这算是基本技能。主要任务维护压测环境,完成施压和输出性能指标和服务器异常,性能瓶颈分析和调优当然交给开发。完成这些工作的前提是你得有一个高效且稳定的测试框架,确保瓶颈只会发生在服务器,而不是你的施压机器,分布式可以提高性能但会让整个压测系统更加复杂。
说的这些或许只有大厂能够搞,而且不具备通用性,需要在特定的领域,且需要一定的门槛,这就大部分人不达标,所以最好的建议先做别的,进了大厂或者进了特定的领域,比如有专门负责这块性能的测试,再去学,其实掌握这些也不难,大部分人差的是一个机会,不是技能