如何面试性能测试

最近,在Q群或者微信群里常常看到有测试朋友在问有没有性能测试面试的资料?如何面试性能测试岗位?css

由于本身也一直在作性能测试,大大小小的项目加起来也好几十个了,并且,公司招聘性能测试,也面试过不少应聘者(极少使人满意,有些连linux命令都不会),这里就作个性能面试概要总结分享给你们吧,可能你看了会懵逼,由于须要必定的基础,你能够点击左侧加群来聊聊。html

性能招聘要求

投递简历前,咱们须要先了解对方的招聘要求,虽然招聘要求都是互相copy的,咱们仍是从某招聘网找一个20k+的性能测试招聘要求看看:前端

是否是以为要求不少?因此,不会的,就查漏补缺吧。推荐书籍,参考:http://www.javashuo.com/article/p-wignazee-bo.html vue

再补充一个广州某公司的招聘html5

能够看到,性能的薪资已经和后端开发的至关了,也超过了前端开发java

       招聘岗位:性能测试工程师
       薪资范围:12-18K
       任职要求:
一、有3年以上中大型网站或者后台服务器的性能测试经验,大专及以上学历;
二、能独立承担项目性能测试、具有性能测试需求分析能力,有定位系统瓶颈和性能调优的经验;
三、精通1~2个主流性能测试工具,如loadrunner、jmeter,能熟练使用性能数据监控工具;
四、熟悉WEB服务器(如Apache,Nginx)的配置,能对调优有看法;
五、熟悉主流数据库,如postgregre、mysql、Redis、MongoDB等;
六、熟悉Java/Shell/PHP/Perl/Python/Ruby等至少一种脚本语言、熟悉linux以及持续集成更佳;
七、有强烈的责任心,工做态度严谨,能承担较大工做压力,具有良好的沟通能力和团队合做精神和沟通

       招聘岗位: java开发工程师
       薪资范围:12K-18K
       任职要求:
1.计算机相关专业,本科以上学历, 具备3年以上Java以项目开发经验;
2.精通Java开发,熟悉Java的核心语法,了解J2EE设计模式,熟悉面向对象的分析设计和工具;
3.熟悉掌握SQL语言,可以熟练进行数据库设计,有Oracle、Postgresql等相关数据库项目开发经验;
4.熟悉分布式系统的设计和应用,熟悉分布式、缓存、消息等机制,能对分布式经常使用技术进行合理应用;
5.掌握多线程及高性能的设计与编码及性能调优,熟悉微服务、熟悉Spring Cloud;
6.具有良好的代码编程习惯及较强的文档编写能力.

       招聘岗位;前端开发工程师
       薪资范围:10K-16K
       任职要求:
1.全日制本科学历,计算机相关专业,2年以上前端开发经验;
2.有扎实的html五、css三、js等前端基础,能熟练运用vue、angular、jquery等框架者优先;
3.对PC及移动端浏览器兼容性有丰富的实战经验。熟悉前端性能优化,熟练使用前端自动化构建工具,好比webpack、gulp、fis等;
4.了解至少一门后端开发语言,并有必定的实战经验。熟悉先后端分离的开发模式,熟练使用git等协做工具;
5.良好的编码习惯,包括代码注释,文件及函数命名,模块解耦等;

  

性能面试准备

作性能测试须要掌握的知识面很宽泛,包括linux、数据库、各类中间件服务等等,并且还须要必定的深度,这样才能去作性能分析、定位、调优。总之就是架构师的知识面了,架构师精通的,你都要熟悉或者至少了解,像nginx,tomcat,mysql,redis,linux,jvm这几个经常使用的,基本上是面试必问的。python

同时,最好再掌握1-2门编程语言及经常使用算法,最佳组合是python + java,我是用python造测试数据及数据库存量数据,用java开发jemter没有的取样器(好比jmeter没有自带dubbo协议接口的取样器,虽然如今已经有dubbo的第三方插件了,可是若是你面试的时候说是本身开发的,那逼格提高好几个档次),说明一下,jmeter是如今主流的客户端并发工具,市场使用率已经50%+了。mysql

性能等级

有人说,我会作性能脚本,会跑并发了,我会作性能测试了,下面来看下到底本身几斤几两,能面个什么等级,或者你压根儿就仍是个性能外行jquery

网上有些资料是这么定义的:linux

  性能外行:会作简单的脚本跑并发(复杂的,好比dubbo接口这些须要写代码的,就搞不定了);

  性能初级:会性能监控;

  性能中级:会常见性能问题的定位调优;

  性能高级:会调优,性能自动化预警监控、容量规划。

如何面试性能

通常来讲,面试性能,围绕如下几个方面去说就能够了:

介绍性能测试流程

参考:http://www.javashuo.com/article/p-ouukbbif-gp.html

列举性能测试常见问题

性能测试结果中,咱们关注的指标是tps和art(固然,也会关注各个服务器的各类资源状况),若是tps低,或者响应时间长,或者服务器资源紧张,那就须要咱们去定位性能问题了,

常见的性能问题(有些只是表象,须要深层次定位):
  a.服务器
    cpu:us & sy
    内存:使用率及交换率
    磁盘io:读写慢
    磁盘容量
  b.网络带宽:看当前收、发速度及有没有丢包、端口使用状况
  c.cpu高:看线程信息;是否fgc等
  d.队列问题(负载高):磁盘io队列(物理读高);线程队列(线程阻塞、锁竞争)
  e.各类链接池问题:不足、未释放(以及半释放)
  f.死锁问题:线程死锁、数据库死锁
  g.sql问题:索引(未加、使用不当)、慢sql(全表扫描、查询结果未分页展现、sql逻辑)、长事务
  h.应用log级别:设置不正确
  i.缓存设置问题

上述问题详细分析、定位,请关注后续总结分享。

详细举例遇到的1-2个性能测试问题

参考:https://www.cnblogs.com/UncleYong/category/1437390.html

小小建议

机会是留给有准备的人的,不要在机会来临时,才发现本身各类不足,建议你们充分利用上下班路上的时间,人的差距是下班后的几个小时产生的。

你能够任性的裸辞,可是切忌毫无准备的裸面,裸面就是浪费时间、浪费机会。

今天早上微信群一个群友发笔试题让你们助力,里面至少85%在个人博客中都能找到答案,^_^,因此,知识须要积累,全栈测试干货汇总目录:http://www.javashuo.com/article/p-dnexrcey-bg.html

相关文章
相关标签/搜索