又是一年跳槽季,最近有不少小伙伴跑来咨询:
想找软件测试工作,应该要怎么进行技术面试准备?
工作不到 2 年,想跳槽看下机会,有无软件测试的面试题呢?
金三银四,大家找工作的需求比较高,所以该文章就 “如何进行技术面试准备” 来聊一聊。
清楚应聘企业的岗位职责要求
首先呢,所谓知己知彼百战不殆,我们先得弄清楚应聘企业对于求职者的技能要求是什么,然后有针对性地去做复习准备。
以下以 1-3 年工作经验,薪资期望 10-15k 举例,其他自动化测试、性能测试等岗位同理。
1、随意打开一家网上招聘平台,例如 boss 直聘,选择对应城市,输入岗位-软件测试工程师,选择自己符合的工作年限,选择自己期望的薪资要求,点击搜索。
2、然后点击几家企业进去,查阅并记录岗位职能要求
3、综合几家应聘公司的技能要求,我们大致可以列出如下需要掌握的技能
Ø 必须掌握
- 精通软件生命周期、测试流程、测试理论
- 具备真实项目经验,例 Web、app 项目测试经历
- 测试文档:测试计划、测试用例的设计和编写、测试报告
- 缺陷管理:问题分析定位,缺陷提交、缺陷跟踪及归纳总结
- 计算机网络知识:TCP/IP 协议等
- Linux 系统使用,搭建测试环境能力
- Oracle /SQL Server 等数据库操作
Ø 进阶加分
- 接口测试,掌握测试工具 Jmeter/postman、fiddler 抓包工具
- 主流开发语言的掌握 Python/java
- 自动化测试,掌握 selenium/appium 等框架工具
- 性能测试,测试工具 Jmeter/loadrunner、性能场景设计、性能分析及调优
- app 专项测试,客户端性能测试、网络测试等
- 安全测试,具备漏洞挖掘及分析能力、掌握测试工具 Burpsuite/AppScan 等
Ø 软技能
良好的沟通能力、细心耐心、责任心、抗压能力强、分析问题解决问题能力、学习能力、团结合作精神、英语读写能力等
梳理每种技能对应的面试题型
l 软件生命周期、测试流程
——公司的测试流程?
——你们公司的工作是怎么开展的?
——项目中角色?你如何看待自己角色的重要性?
——项目开发中,协同其他角色的工作?产品、开发
——开发模型?很少问,敏捷开发?devops?
l 项目经验,例 Web、app 项目测试经历
——介绍项目(项目业务,核心业务流程?)
——项目迭代周期?迭代版本?
——项目上线?上线流程?
——面试官对项目熟悉,问项目细节?
l 测试文档:测试计划、测试报告
——怎么制定测试计划?
——测试报告怎么写?侧重点?
l 测试思维、测试用例
——掌握常见黑盒测试方法:等价类、边界值、场景法、错误推测、因果图判定表、正交实验法等的应用
——项目中 xx 模块是怎么测试的?例如支付怎么测试?
——指定生活中物品问怎么测试?电梯/水杯/纸笔等
——大家都熟悉的软件产品功能怎么测试? 登录测试?微信红包/朋友圈/点赞/发消息、抖音视频/直播、淘宝京东购物车/优惠券/抢券等
l bug 相关(发现定位 bug、提交 bug、跟踪 bug)
——bug 如何定位?如何判断前后端 bug?
——bug 的生命周期?怎么提交高质量的 bug?
——bug 跟踪流程?
——印象深刻的 bug?bug 产生的原因?
——复现率很低的 bug,你是如何处理的?
——提了一个开发不认同的 bug,你是怎么处理?
——线上出现的 bug,你们怎么处理?
l 计算机网络知识
——osi 七层模型?
——TCP 三次握手?四次挥手?
——http/https 协议区别?
Linux 系统操作
——Linux 系统下搭建测试环境?更新环境?Docker 环境?
——说出 10 个常用 Linux 命令?
——查看日志命令?
——系统资源监控命令?
l Oracle /SQL Server 等数据库操作
——增删改查 SQL 语句编写---学生表、老师表、课程表、选课成绩表高频问题
——项目涉及到数据库操作?
——多表关联查询命令?子查询?左右连接查询?
——索引?存储过程?视图
l 接口测试,掌握测试工具 Jmeter/postman、fiddler 抓包工具
——接口测试流程?接口测试原理?
——接口测试怎么做的?关注点?
——接口测试用例设计?
——接口工具 jmeter/postman 的具体操作知识点——关联、断言
——get 和 post 请求方法区别?
——说下 Cookie、Session、token 理解?
——fiddler 在工作中的应用?抓包过程?
l 自动化测试,掌握 selenium/appium 等框架工具
——自动化测试框架?测试框架至少包含哪些核心模块?
——页面元素定位方式有哪些?
——Web UI 自动化中显示等待、隐式等待有什么区别?
——Web 自动化中的弹框怎么处理?多窗口?
——selenium 工作原理?
——接口自动化中的关联怎么处理?
——接口自动化中的数据验证怎么实现?
——adb?app 的日志抓取及分析?
l 性能测试,测试工具 Jmeter/loadrunner、性能场景设计、性能分析及调优
——性能测试流程?
——什么是性能测试、负载测试、压力测试?
——性能测试需要关注到哪些性能指标?
——你有碰到什么样的性能瓶颈问题?如何分析?
——有验证码的功能,怎么做性能测试?
——如何实现 1000 用户并发?
l 软技能
——一个优秀的测试工程师应该要具备什么素质?
——你觉得作为测试,怎么去保证软件产品质量?
——你做测试的优势?你个人优缺点?
——你有无清晰的职业规划?
——能否接受加班?
总结
在未真正面试之前,谁也料想不到面试官会问出什么问题,虽说面试宝典可以帮助大家更有针对性地去做面试准备,但其根本上还是得真正掌握这个技能,熟其原理熟其应用。才能无论面试官怎么出题,都能从容应对。祝大家都能顺利找到满意薪资的工作!