性能测试工程师,面试都问什么?

简介: 细节:如何分析性能需求?测试的目的、范围如何界定?预期指标怎么得到?需要哪些数据和手段来评估?压测环境配置模型如何抉择?测试数据如何准备?

大概去年这个时候,写过一篇文章:性能测试岗位常见面试题。当时是出于一个求职者的角度,对自己遇到的一些性能岗位面试问题进行了整理归纳。最近这一年,对性能测试有了更多的认知,也做了大半年性能团队的Leader,最近部门开放了性能测试工程师岗位,也面试了几位候选人。这篇文章,说说我对性能测试工程师的定位、需要的技能以及我面试候选人时会问的一些问题,仅供参考。

 

一、岗位定级


以我之前做性能团队Leader时候的经历来说,对性能岗位的定级,大概是按照如下内容划分:


岗位定级 岗位职责 薪资范围(参照市场价)
初级 编写&执行脚本,数据收集统计,能在指导下完成简单的性能测试工作 10-15k
中级 独立完成常规的性能测试工作,有一定的性能瓶颈分析能力 14-20k
高级 能独立或带领team推动完成较为复杂的性能测试工作,分析定位瓶颈并参与调优 20-30k
资深/专家 从业务或架构角度,事前预防、事中定位调优、事后复盘整体优化,更好的服务业务,迭代进化team水准 30-50k


PS:如上定级和岗位职责描述,稍显粗略,每一级都默认具有上一级的职责和能力。

 

二、面试问什么


以我今天面试了一个候选人的例子来说,我问了如下几方面的问题:


1、性能测试流程


重点:需求分析调研、预期指标设定、场景建模、环境数据准备、监控分析;


细节:如何分析性能需求?测试的目的、范围如何界定?预期指标怎么得到?需要哪些数据和手段来评估?压测环境配置模型如何抉择?测试数据如何准备?


2、网络协议


重点:HTTP、TCP、Dubbo及其他RPC框架接口;


细节:三次握手、http和https的区别、AES和RSA的区别、RPC框架的原理、常见的RPC框架;


3、系统架构


重点:微服务、分布式、SLB、ESB;


细节:docker&K8S&Prometheus、分布式的系统,测试时要注意哪些?负载均衡实现原理?涉及到ESB类型的系统,如何进行性能测试?


4、中间件


重点:MQ&kafka、Redis、Tomcat、JVM、链路监控工具(cat、pinpoint、skywalking);


细节:MQ和kafka各自的优点、如何测试MQ的性能、Tomcat参数配置&线程池、缓存穿透&缓存雪崩、Redis的缓存淘汰算法LRU&LRU、JVM堆的构成、OOM的原理&如何监控?


5、压测&监控工具


重点:jmeter、locust、PTS、nmon、zabbix


细节:jmeter参数化&事务控制&二次开发&分布式压测、对其他压测工具的了解及使用程度、nmon使用&二次开发、zabbix监控部署、对监控实时可视化的了解;


6、linux相关


重点:常见的监控分析命令、查看日志的几种方式、CPU的工作原理、shell脚本;


7、常见性能瓶颈分析


重点:TPS上不去、负载不均衡、高并发下大量请求报错、TPS波动大;


8、性能场景


重点:容量规划、性能基线、全链路压测;


PS:上面的问题会根据候选人具体的面试表现来针对性的提问,由浅到深,并不是全部都会问到。

 

三、如何成为一名合格的性能测试工程师?


1、快速学习,了解基础的理论,学习常见的压测监控分析工具;

2、在功能测试完成前提下,主动承担性能测试工作,大量实战;

3、寻找合适优秀的社区学习交流分享,思考沉淀;

4、加入我司,上面的几点都可以得到☺☺☺


最后,正经来说,这是一篇性能测试岗位面试常见问题的blog,应该也代表了业内大部分该岗位的面试问题,非水贴。。。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
1月前
|
存储 算法 C++
C/C++工程师面试题(STL篇)
C/C++工程师面试题(STL篇)
48 6
|
1月前
|
存储 缓存 数据库
C/C++工程师面试题(数据库篇)
C/C++工程师面试题(数据库篇)
49 9
|
2月前
|
机器学习/深度学习 人工智能 算法
新时代软件测试工程师的挑战与机遇
随着科技的飞速发展,软件测试在当今信息化社会中扮演着举足轻重的角色。本文将探讨新时代软件测试工程师所面临的挑战和机遇,分析其发展趋势及应对策略,旨在为广大软件测试从业人员提供启示和指导。
|
3月前
|
C++
C/C++工程师面试题(指针篇)
C/C++工程师面试题(指针篇)
54 0
|
3月前
|
网络协议 网络性能优化 C++
C/C++工程师面试题(网络编程篇)
C/C++工程师面试题(网络编程篇)
49 0
|
6天前
|
分布式计算 监控 大数据
《吊打面试官》- 大数据工程师50道中大厂面试真题保姆级详解
《吊打面试官》- 大数据工程师50道中大厂面试真题保姆级详解
19 1
《吊打面试官》- 大数据工程师50道中大厂面试真题保姆级详解
|
13天前
|
运维 关系型数据库 MySQL
性能分析到底是不是性能测试工程师的能力?
【4月更文挑战第27天】性能分析到底是不是性能测试工程师的能力?
21 2
|
14天前
|
存储 网络协议 安全
【专栏】30 道初级网络工程师面试题为广大网络工程师提供参考。
【4月更文挑战第28天】本文为初级网络工程师提供了30道面试题,涵盖OSI七层模型、TCP/IP协议栈、IP地址分类、ARP、VLAN、STP、DHCP、DNS、防火墙、NAT、VPN、网络拓扑、广域网、以太网、网络存储、网络拥塞、流量监控、延迟、网络安全、网络攻击防范、协议分析、性能优化、故障排查、网络虚拟化和云计算等基础知识。这些问题旨在帮助面试者准备并提升网络工程领域的知识和技能。
|
20天前
|
前端开发 测试技术 C++
Python自动化测试面试:unittest、pytest与Selenium详解
【4月更文挑战第19天】本文聚焦Python自动化测试面试,重点讨论unittest、pytest和Selenium三大框架。unittest涉及断言、TestSuite和覆盖率报告;易错点包括测试代码冗余和异常处理。pytest涵盖fixtures、参数化测试和插件系统,要注意避免过度依赖unittest特性。Selenium的核心是WebDriver操作、等待策略和测试报告生成,强调智能等待和元素定位策略。掌握这些关键点将有助于提升面试表现。
26 0
|
1月前
|
SQL 安全 NoSQL
渗透工程师面试
信息收集 1. 服务器的相关信息(真实 ip,系统类型,版本,开放端口,WAF 等) 2. 网站指纹识别(包括,cms,cdn,证书等),dns 记录 3. whois 信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等) 4.

热门文章

最新文章