尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

360春招测试工程师笔试真题拆解:高频考点与备考策略

360春招测试工程师笔试真题拆解:高频考点与备考策略 说来也巧手头一直存着一份《360公司-2018春招笔试-测试工程师客观题合集》前阵子整理资料时又翻了出来。虽然过去了这些年但重新看一遍发现里面相当一部分考点至今仍出现在各厂测试工程师笔试里只是换了套外衣。如果你正在准备测试工程师的面试和笔试或者刚入行想摸清这个岗位到底考什么这份合集的含金量并不低。它不光是旧题更像一张技术地图帮你划出“测试理论、计算机基础、逻辑思维”这三块核心疆域。这篇文章不打算给你逐题念答案那没有意义。我想以这份真题合集为线索按当年备考的思路重新拆一遍顺便把我踩过的坑、总结出来的复习方法、以及站在今天回望的感触一起揉进去。内容偏实践适合正在暑假实习投递、春招秋招冲刺、或者准备转行测试的同学。1. 打开这份真题集之前2018年春招的测试岗位画像1.1 为什么一份几年前的真题现在还有参考价值很多同学一看年份就不想碰觉得技术迭代这么快旧题能有什么用。我反而觉得恰恰是这类“历史真题”最适合用来建立知识骨架。互联网公司的笔试出题是有惯性的尤其是客观题部分多年核心考点非常稳定。对测试工程师来说稳定就意味着可以提前备考、可以总结套路。拿这份360的合集来看整体分布大致是软件测试基础理论30%左右计算机网络与操作系统25%左右Linux与数据库15%左右编程和逻辑思维题20%左右另有少量业务场景题和行业常识题。这个比例和近几年各厂测试笔试相比重心没有本质变化。你把这些内容吃透等于拿到了测试岗位笔试的“基础分”。还有个容易被忽略的点笔试客观题其实是面试的预演。面试官看到的不是你对了多少题而是你暴露了哪些薄弱环节。我当年就因为在“缺陷优先级”这道题上的错误理解被面试官追问了整整十分钟差点没缓过来。所以刷真题不能只对答案要想清楚每道题在考察什么。1.2 客观题在整张试卷中的定位与考察意图客观题通常包括单选、多选和判断看起来最简单实则暗藏玄机。它的核心不是考你会不会背概念而是考你有没有真正理解概念之间的边界。举一个高频例子题目问“等价类划分法适用于哪个测试阶段”A说单元测试B说集成测试C说系统测试D说验收测试。很多同学看到等价类就条件反射选系统测试但严格来说等价类划分是测试用例设计方法可以用于任意测试阶段的用例设计。这道题的真正考点是“方法”和“阶段”两个维度的区分。类似这种题干和选项都经过精心设计每一个干扰项都在瞄准你知识体系里的模糊地带。多选就更考验功底。少选、错选、多选都不得分你必须非常确定知识的边界。比如“黑盒测试方法包括哪些”等价类、边界值、判定表都属于但程序复杂度分析属于白盒视角混进去就是陷阱。想拿高分靠的不是记忆力而是理解力。1.3 360这类互联网公司偏好什么样的测试候选人从笔试题目分布能倒推出公司的用人偏好。360是安全起家的公司所以对候选人的逻辑严谨性和计算机基础要求很高。它的测试笔试里网络和安全相关题目占比明显比一般公司高。比如TCP连接建立过程、常见的Web攻击类型、Cookie与Session的区别等都是高频题。同时这类公司很看重候选人的“测试思维”也就是破坏性思维。他们不希望你只按功能点逐条验证而是希望你面对任何系统时脑子里自动生成“哪些地方可能出错”的清单。这种思维在笔试中通常通过两类题目体现一类是场景题比如“如果一个用户支付成功后没有跳转页面可能有哪些原因”另一类是逻辑题要求你设计步骤找出问题源头。后者我们到第3章细说。2. 客观题高频考点拆解看似在考记忆实际在考理解2.1 测试基础理论不要背概念要能用一句话讲清楚测试基础理论是客观题的绝对主力但也是很多人的失分重灾区。原因是大家习惯背书上的定义却忽略了概念背后的“场景”和“目的”。比如白盒测试与黑盒测试的区别官方定义谁都能背但题目换个问法就懵了。真题里常见的是“下面哪个测试方法关注程序内部逻辑路径”选分支覆盖。这就是把白盒测试的具体方法拿来考。理解比背诵重要的地方在于你得知道白盒测试关注“程序怎么实现”黑盒测试关注“功能是否满足需求”两者各自有分支覆盖、判定覆盖、路径覆盖、条件组合覆盖等价类、边界值、判定表、因果图等方法。概念本身其实很少。再说V模型和W模型几乎是必考题。V模型强调开发和测试的阶段性对应W模型则强调开发与测试的并行。真题喜欢考“哪个模型强调了测试贯穿于整个开发周期”答案是W模型。这种题单看没问题但出题人会叠加变体比如“我们在需求分析阶段就应该开始编写验收测试用例这句话描述的是哪个模型的特点”。没有真正理解模型间的差异很容易望文生义。2.2 用例设计方法等价类和边界值永远是主菜我用“主菜”这个词一点都不夸张。几乎每套测试笔试试卷里都有这两类题目区别只是换了个系统背景。今年考一个登录框明年考一个注册页面后年考一个搜索框但底层方法完全一致。等价类划分法把输入域分成有效等价类和无效等价类目标是“用最少的用例覆盖尽量多的输入”。真题中最常见的陷阱是只划分了有效等价类忽略了无效等价类。题目会给一个“密码为6-12位字母数字组合”的输入框问你可能设计几个有效等价类用例。正确的思路是分别考虑长度、字符类型、组合规则并且单独为“小于6位”“大于12位”“包含非法字符”设计无效用例。这一层如果漏掉后面几乎必错。边界值分析是等价类的黄金搭档。它的理论依据是程序最容易在输入边界处出错。所以凡是遇到“1-120”“0-100”这样的范围描述优先把边界点和次边界点全部纳入用例。我习惯的做法是最小值、最小值减一、最大值、最大值加一、中间正常值。这套组合应对90%的边界类题目都有效。大家在复习时可以用一个年龄段输入框做练习把等价类用例表和边界值用例表各列一份练完基本就通了。2.3 Linux和数据库白送的分别丢测试岗位笔试里的Linux题多数集中在文件操作、权限、日志查看和进程管理。因为测试工作大概率要接触Linux环境没有这些基本功连bug都复现不了。真题里常见的命令包括查看进程ps -ef | grep java这是定位java进程最常用的组合。查看端口占用netstat -tlnp排查服务起没起来先看端口。实时查看日志tail -f测试环境定位问题必备。权限修改chmod 755代表所有者可读写执行、属组和其他用户可读执行。文本处理三兄弟grep、awk、sed其中grep最常出现在客观题中。客观题考命令不会考得太偏经常是“查看某个进程占用的端口”用哪个命令或者“将某目录下所有文件的属主改为指定用户”用哪个命令前者是lsof -i或netstat后者是chown。这些是Linux最基础的操作复习的时候在虚拟机里跑一遍比背十遍都管用。数据库的考点更是固定集中在SQL查询和简单的表操作。笔试最爱考四类聚合函数、多表连接、子查询、分组过滤。一道代表性真题“查询各科成绩大于80分的学生姓名”需要用GROUP BY配合MIN(score) 80或者是子查询。很多同学栽在WHERE和HAVING的区别上WHERE在分组前过滤HAVING在分组后过滤。搞清这个数据库题就打通了一半。2.4 网络与操作系统计算机基本功的底线这两块是区分“背题选手”和“科班选手”的分水岭。测试工程师接触的系统底层都跑在网络上和操作系统之上不懂这些只能测到功能表面测不出深层问题。网络方面HTTP协议是绝对的C位。客观题常考状态码语义200表示成功301是永久重定向302是临时重定向403是服务器拒绝请求404是资源不存在500是服务器内部错误。这些必须焊死在脑子里。还有GET与POST的区别题目喜欢考“哪个更适合传输敏感信息”答案是POST原因是参数放在请求体中而不是URL上更不容易被日志记录。但要注意这只是相对安全很多刚入行的同学容易把“POST更安全”理解成“绝对安全”面试时会被追问。TCP三次握手也是常客。题目形式有“第二次握手时客户端状态是什么”“SYN攻击利用的是哪一次握手”。前者是从SYN_SENT变成ESTABLISHED后者是大量客户端只发第一次握手不再响应导致服务器半连接队列耗尽。在360的笔试卷里这类题还会延伸到简单的网络攻击原理毕竟安全是它家的基因。操作系统的常考点是进程与线程的区别、死锁的四个必要条件、内存管理基础。我印象最深的一道题是“死锁发生的四个必要条件不包括下列哪一项”四个候选里混入一个“资源剥夺”正确答案就是这个因为资源剥夺其实是解除死锁的方法而非产生条件。这类题需要你把概念放到场景里区分而不是对着表格背。2.5 逻辑题与智力题测试思维的前置筛选客观题最后一块是逻辑题和智力题这也是测试岗笔试比较有特色的部分。常见题型包括真假话推理、找唯一不同、流程设计、编码解码、倒水问题、称小球问题等。表面上看是在考智力实际考察的是“系统化排查问题”的思维方式。比如经典的8个小球问题其中有1个球质量不同用天平最少称几次能找出来。答案是2次。第一步先分成3、3、2三组前两组如果平衡说明问题球在剩下的2个里再称一次即可如果不平衡取较重的3个中的2个再称。这类题目本质上就是最坏情况分析是测试用例设计思维的数学版。我的建议是逻辑题不要凭感觉做要动笔。哪怕是在笔试现场也要把条件画出来、列出来。多数逻辑题失分不是因为你不会而是因为只看了半句话就开始选答案。3. 复盘当年踩过的坑从错题看测试思维的常见误区3.1 错题一等价类划分的对象到底是输入还是输出那年有一道题题干说“某系统需求为只允许6-20位数字和字母组成的密码设计等价类用例。”我一眼扫过直接选了几个不同长度的有效密码自我感觉良好。结果一对答案发现漏掉了“无效等价类”里的“含有特殊字符”和“纯数字”这类组合。这道错题的价值不在于答案而在于让我意识到一个原则等价类划分首先划的是“需求对输入的约束”不是“我找几个能通过的例子”。所以拿到任何输入类题目第一件事是列出需求中的约束条件长度、字符集、格式、是否可空然后根据每个约束的正反两面划分等价类最后再考虑如何组合。这个过程后来救了我很多次因为项目里的输入框千奇百怪但约束分析的方法可以复用。3.2 错题二缺陷严重级别和优先级永远混为一谈这是一道多选问“关于软件缺陷的严重级别与优先级下列说法正确的是”。我选了“严重级别高的缺陷优先级一定高”结果被扣分。正确的理解是严重级别是缺陷本身对系统的破坏程度优先级是修复该缺陷的紧迫程度。两者可以不一致甚至经常不一致。比如一个“登录按钮文字拼写错误”严重级别很低但品牌项目里它可能被安排为最高优先级因为要赶上线。这个知识点在笔试中踩坑之后我专门整理过一个判断顺序先看能不能导致数据丢失、系统崩溃、核心功能不可用这就是严重级别高的再看它是否阻塞了测试进度、是否影响发布主路径这决定优先级。客观题里碰到这种题多选一定要把“两套维度独立判断”的思路贯彻到底。3.3 错题三TCP三次握手问的是状态不是过程题目问的是“客户端发送SYN后进入的状态”选项有LISTEN、SYN_SENT、SYN_RCVD、ESTABLISHED。我知道三次握手的过程却在这道题上栽了跟头选了SYN_RCVD但客户端发送SYN后其实进入的是SYN_SENT服务端收到后才会进入SYN_RCVD。复盘时我发现自己把流程图记住了但没有把每个状态绑定到对应的角色和时序上。从那以后我复习网络状态时习惯写一个“角色动作状态”的对应表客户端发送SYN →SYN_SENT服务端收到SYN并回复SYNACK →SYN_RCVD客户端收到SYNACK并回复ACK →ESTABLISHED服务端收到ACK →ESTABLISHED这种梳理方式在回答面试追问时也非常好用因为它证明你真的理解了状态迁移的条件而不只是背了图。3.4 从错题总结出来的三条应试原则第一读题时圈出“不正确”“不包括”“不属于”这类否定词。测试笔试的命题老师非常喜欢在否定词上做文章我见过至少三个同学因为看漏“不”字丢掉本该拿到的分。第二多选当作判断题来做。每个选项单独判断对错再组合。不要因为A选项正确就觉得整道题稳了B选项可能是个精致的陷阱。第三做完选择题后如果时间允许在草稿纸上把每个错题对应的知识点写一遍。这一步不是让你写完整答案而是强迫大脑在“选项判断”和“知识输出”两个层面建立连接。我自己靠这个办法把很多模糊概念彻底焊死在知识体系里。4. 一套可复用的笔试备战路线从真题出发倒推复习计划4.1 阶段一用真题校准知识地图而不是一上来就刷题我的建议是先不做题先花两个小时把一份完整的真题“读”一遍。这里的读是指只关注每道题的知识点归属不关注对错。把题目按软件测试基础、编程语言、数据结构与算法、数据库、操作系统、计算机网络、Linux、逻辑题、业务场景题等分门别类记下来你就得到了一张“岗位知识地图”。这张地图的价值在于你马上知道自己的时间该往哪儿投入。如果你测试理论弱就先把黑盒白盒方法补齐如果你网络基础一般就集中看HTTP和TCP。千万不要平均用力复习最怕把一周时间平均分配给所有科目结果每科都学了个皮毛。以我自己的经验测试基础理论这块可以快速过因为概念相对集中网络和操作系统则需要更多时间巩固因为它们不只在笔试里考面试时也会从各个角度追问。4.2 阶段二按“知识模块”专项突破错题当天复盘第二个阶段是模块化刷题。把当天复习的知识模块和配套题目放到一起做。比如今天复习了“测试用例设计”就只做等价类、边界值、判定表相关的题目明天复习“数据库”就集中刷聚合函数、子查询、多表连接的SQL。做完题目后必须做错题复盘。我给自己定过一个死规矩每道错题至少写三句话——错在哪里、正确的思路是什么、下一次遇到同类题怎么快速识别。这三句话相当于把一次“模糊认知”转化成“清晰结论”效果远胜于把错题抄在本子上。坚持两周你会明显感到做题的确定性提高。复盘还有一个技巧不要只复盘错题还要复盘“蒙对的题”。很多同学对答案时看到打了勾就略过其实蒙对和不会没有本质区别。我在二战备考时把所有“正确答案选对了但解释不出来”的题全部标记和错题一起复盘。别小看这一步它能把你的知识水分挤掉一大半。4.3 阶段三全真模拟训练节奏和取舍能力离笔试还有一周左右进入全真模拟阶段。按正式考试的时间限制来做整卷用手机计时中间不暂停。这一步的目标不是“把每道题做对”而是训练“在有限时间内如何取舍”。测试笔试卷子一般不算特别长但题量大、陷阱多很容易在前面纠结太久后面的大题没时间写。我当年的策略是客观题部分每道题最多一分半拿不准的先标记跳过等最后一轮再回来大题先保证拉开框架再补充细节。这套策略帮我在真实笔试中稳住了心态。模拟时还要专门训练“否定词敏感性”。我在草稿纸角落写了一个大大的“不”字提醒自己在判断题干时先看是否有否定词。这个笨办法非常有效因为它把你下意识忽略的信息变成了视觉提醒。4.4 考前24小时不再碰新题只回顾“错题三句话”考前一天我几乎不动新题只做两件事。第一翻阅错题本里每一道题的“三句话复盘”唤醒记忆第二把Linux常用命令、SQL语法模板、测试用例设计步骤、TCP状态迁移这类高频硬知识再默写一遍。默写不是抄写而是不看笔记自己在白纸上把关键点写出来写不出来才去看。这么做的好处是你会发现自己以为记住了、但实际写不出的知识点。考前暴露问题总好过考场上暴露。另外好好睡觉比临阵磨枪重要得多。笔试考的是快速反应不是深夜硬撑充足的睡眠才能保证大脑高速运转。5. 考完之后回头看这些考点的今天与明天5.1 哪些内容直到今天依然是测试面试必问我原以为过时的那些基础理论实际上一个都没过时。黑盒白盒、等价类边界值、判定表、场景法依然是面试官考察用例设计能力的标准工具。我现在参与面试时经常会让候选人现场对一个功能模块设计测试用例大家用的还是等价类、边界值、场景法。这套方法论已经稳定运行了几十年因为软件测试的对象虽然变了但“如何系统化地找出程序问题”这个底层逻辑没变。Linux和数据库同样不会过时。不管是测Web系统、App还是接口你始终要去看日志、查数据。甚至AI大模型应用来临时测试工程师要验证模型输出是否正确也得靠日志查询和数据分析基本功。很多人以为技术栈越新越好实际上测试岗位的护城河恰恰在这些“看着不起眼”的基础功上。5.2 哪些新考点正在取代旧考点站在今天回头看有两类新知识是2018年那会儿很少见、如今却高频出现的。第一是接口测试和自动化测试。随着微服务架构和持续交付普及测试工程师必须懂接口测试会写简单的自动化脚本。客观题里开始大量出现HTTP请求方法、JSON结构、Mock数据、持续集成概念。第二是AI相关技能。这正好对应了近期的热词“测试工程师面试AI技能问题”和“AI测试工程师”。面试官不再只问你“怎么设计测试用例”还会问“你怎么评估大模型生成的结果”“如何构造Prompt来测试AI应用”。这类题客观题很难完全覆盖更多会以场景题和面试问答的形式出现但它的底色依然是“测试思维”定义预期结果、设计验证方法、分析失败原因。我在实际工作中最大的感受是AI辅助测试和测试AI应用正在成为两种都重要的能力。前者是用AI帮你生成用例、生成脚本、分析日志后者是把AI应用本身当作被测对象。无论哪种都要求你先有扎实的测试基本功再叠加对模型行为的基本认知。5.3 这些年培训新人的时候我反复强调的一件事我越来越觉得笔试和面试能筛掉的是“没准备好的人”最终在职场上拉开差距的是“愿不愿意把一件事想透”的习惯。拿到一份旧真题有人只觉得它旧有人会从中分析知识结构有人甚至能顺藤摸瓜地梳理出一份完整的复习大纲。同样的资料不同的使用方式带来的结果完全不同。回到这份360公司2018春招笔试的测试工程师客观题合集我的态度一直是把它当成一个“知识索引”而不是“题库”。每一个考点背后都有一片值得深挖的区域挖得够深考什么你都不慌。准备过程中偶尔遇到看不懂的题或者发现自己知识盲区很大都是正常的别焦虑按第4章的阶段计划一步步来就行。如果你正在准备测试面试我最后再分享一个小经验每次做完一套真题不仅要对答案还要反问自己“如果我是出题人我会在哪个位置设置陷阱”。这个习惯帮我从背题模式切换到了理解出题逻辑的模式效果立竿见影。希望这份万字拆解对你也有同样的帮助。
返回列表