软件测试面试必看:别再只会点点点!从知识点到高频题,一篇搞定
很多小伙伴看过我之前发的软件测试学习路线,看完反而更懵:知识点这么多,面试到底怎么答?简历又该怎么写?
今天就一次性给大家讲清楚——测试岗真不是大家印象里“点点点找Bug”那么简单,除了基础测试理论,计算机网络、项目实战、面试话术样样都要会。
下面这份干货,包含高频面试题、核心知识点、标准流程总结,不管是求职还是查漏补缺都够用。
一、面试必问:计算机网络基础题
想顺利通过测试面试,网络基础是必考题,下面这些是出现频率最高的:
- Cookie、Session、Token 分别是干什么的?有什么区别?
- 什么是 HTTP?HTTP 和 HTTPS 有什么区别?
- 常见的 HTTP 状态码有哪些?
- TCP 和 UDP 的区别是什么?
- 计算机网络七层模型分别是什么?
别看问题基础,很多网络基础薄弱的同学,一到面试就容易卡壳。
二、软件测试高频面试问答(真实面经整理)
面试多了就会发现,测试岗的问题高度重合,甚至可以提前预判、从容应对。以下是最常被问到的问题:
-
请做一段简单的自我介绍 -
你在生活或使用软件时遇到过哪些印象深刻的 Bug? -
你在实际工作/项目中是如何开展测试的? -
常见的测试策略有哪些? -
什么是回归测试?为什么在软件开发中格外重要? -
APP 测试和 Web 测试有什么区别? -
如何定位一个问题是 APP 端还是服务端导致的? -
如果没有需求文档,该如何开展测试工作? -
如何制定一份测试计划? -
描述一个你印象最深的 Bug,你是如何发现、跟进并解决的? -
你是如何做接口测试的?为什么要进行接口测试?
聊完技术之后,一般还会进入沟通环节:
-
你的期望薪资是多少? -
为什么选择离职/换工作? -
你未来的职业规划是怎样的? -
你还有什么问题想要了解的?
三、软件测试核心知识点(面试必背)
1. 软件测试的类型与分类
(1)按测试阶段划分
- 单元测试
针对程序最小可测试单元进行验证,如函数、方法、类,一般由开发人员完成。 - 集成测试
将多个已通过单元测试的模块组合在一起,测试模块间的接口与交互逻辑。 - 系统测试
对整个系统进行全面测试,覆盖功能、性能、兼容性以及软硬件运行环境。 - 验收测试
由用户、客户或相关业务方,依据需求文档和测试计划对最终产品进行验收。
(2)按代码可见性划分
- 黑盒测试
也叫功能测试,不关注内部代码实现,只关注输入与输出,验证业务逻辑是否符合需求。 - 白盒测试
也叫结构化测试,基于代码内部结构、逻辑分支、执行路径进行测试。 - 灰盒测试
介于黑盒与白盒之间,兼顾业务功能与部分接口、结构逻辑,常用于接口测试与集成测试。
2. 黑盒测试 & 白盒测试:定义、方法、场景
黑盒测试
- 定义
:只关注功能和业务逻辑,不关心程序内部实现,把系统当作一个不可见内部的黑盒。 - 常用方法
:等价类划分法、边界值分析法、因果图法、决策表法、场景法。 - 适用场景
:系统测试、验收测试、功能测试等,侧重验证软件是否满足需求。
白盒测试
- 定义
:基于代码结构与内部逻辑开展测试,关注语句、分支、条件、路径是否覆盖。 - 常用方法
:语句覆盖、判定覆盖(分支覆盖)、条件覆盖、判定-条件覆盖、路径覆盖、基本路径测试、循环测试。 - 适用场景
:单元测试、集成测试,多用于开发自测与代码质量保障。
一句话总结
-
黑盒:测功能,不看代码 -
白盒:测结构,基于代码
3. 软件生命周期
一个完整的软件从构思到上线维护,会经历以下阶段:
- 需求分析
:梳理用户需求,输出需求规格说明书 - 系统设计
:完成架构设计、接口设计、数据库设计 - 开发实现
:研发人员编码实现功能 - 测试阶段
:依次开展单元、集成、系统、验收测试,发现并推动修复缺陷 - 部署上线
:将软件发布到生产环境 - 运维维护
:线上问题修复、性能优化、版本迭代
4. Bug 生命周期(标准流程)
从发现 Bug 到关闭,完整流程如下:
- 新建
:测试人员发现问题,提交至缺陷管理平台 - 确认
:开发人员确认是否为有效 Bug,可拒绝或确认 - 指派
:将有效 Bug 指派给对应开发修复 - 修复
:开发修改代码解决问题 - 复测
:测试人员对修复后的功能进行验证 - 关闭 / 重开
:修复通过则关闭;未解决则重新打开,继续循环
5. 性能测试怎么做?
- 需求分析
:明确性能目标,如响应时间、吞吐量、并发用户数、错误率等 - 制定计划
:确定测试范围、场景、环境、数据量 - 环境与数据准备
:搭建压测环境,准备测试数据 - 脚本开发
:使用 JMeter 等工具编写性能测试脚本 - 压测执行
:运行脚本,监控服务器指标(CPU、内存、IO、网络等) - 结果分析
:通过聚合报告分析吞吐量、响应时间、错误率等 - 输出报告
:总结性能表现、瓶颈点与优化建议
四、写在最后
软件测试并没有想象中那么简单,只会“点点点”很难在面试中脱颖而出。把基础理论打牢、项目经验梳理清楚、面试问题提前准备,offer 自然会更稳。
后续我会继续更新测试面试逐题参考答案、简历写法与项目实战案例,记得关注~
夜雨聆风