软件评测师备考1.4:中级软考的真实备考记录与避坑指南
备考软件评测师这事儿,我在头一个月里基本是摸着石头过河。这个证书属于软考中级,全称是“计算机技术与软件专业技术资格考试(中级)——软件评测师”,考过了不仅能评职称,很多做测试的同学也用他来证明自己的理论功底。我在网上翻了不少经验帖,发现大部分都在列书单、晒分数,真正把备考节奏和容易踩的坑讲清楚的并不多。所以这篇“1.4”阶段记录,就是想把我从准备资料到第一次模拟考之间的过程拆开来讲,尤其是那些书上看不到、只有实际走一遍才能体会的细节。它适合正在做软件测试、想系统梳理测试理论的人,也适合准备软考但还在犹豫从哪下手的同学。
1. 先把考试这东西看透
1.1 软件评测师到底考什么
软件评测师考试分两科:上午的基础知识和下午的应用技术,两科都要达到45分才算通过(满分75分)。上午是75道单选题,涉及的知识面特别宽,从计算机组成原理、操作系统、数据库、网络,到软件工程、测试基础、测试用例设计、自动化测试工具,甚至连知识产权、标准化、法律法规都有一席之地。下午则更贴近测试工程师的日常工作,考的是测试用例设计、缺陷管理、性能测试、自动化测试、测试计划与测试报告的编写。
这个分布决定了备考策略不能是“均匀用力”。上午科目重广度,下午科目重深度。我见过好几个同事,上午差一两分,下午过了也没用,得重来。所以两个半天都必须守住,不能有偏废。
1.2 为什么这个证书值得花时间
我当初报考的理由很实际:一是评职称需要中级证书,二是想把零散的测试经验拉成体系。做了几年功能测试后,你会发现日常工作中用的测试方法其实就那么几种,边界值、等价类、场景法翻来覆去,但为什么这么用、什么时候该用非覆盖组合、条件组合覆盖和判定覆盖之间的区别到底是什么,这些理论如果不系统学一遍,很难讲清楚。
软考这张证书对传统行业、国企、事业单位的信息化岗位认可度很高。就算你在互联网公司,多一个中级职称证书在跳槽和谈薪时也是加分项。更不用说考试本身带动的知识梳理,对后续做测试设计、测试管理都有实打实的帮助。
2. 备考资料与时间安排的实战选择
2.1 资料不在于多,在于怎么用
市面上的软件评测师备考资料分成几类:官方教程、历年真题、辅导机构讲义、视频课程、刷题App。我的建议是,官方的《软件评测师教程》一定要买,很多时候下午题的标准答案就出自这本教材的表述。但不必逐字读,它的组织方式比较枯燥,适合当工具书查阅。
真正出效果的是近五年的真题试卷。上午题的知识点重复率很高,每年都有大量相似的考点以不同马甲出现;下午题虽然案例各不相同,但题型高度固定。把真题做透,比看十遍教材都管用。
我在资料上的搭配是:
- 官方教程一本(主要是查定义、校准表述)
- 近五年真题集(按照年份装订,方便做套卷)
- 一款刷题App(利用通勤、排队等碎片时间做单选)
- 自己整理的错题本(电子文档即可,重点记录做错的原因而不是题目本身)
2.2 时间规划怎么排才现实
备考周期建议控制在3~4个月。太短了,知识点没时间发酵;太长了,人容易疲。我自己的节奏是:
第一个月:通读教程的重点章节,配合章节练习,目标是建立知识地图,知道每一章大概在讲什么。第二个月:专项突破,上午科目按知识点分类刷单选,下午科目按题型练案例题,每周至少写两套完整下午题。第三个月:真题模拟,严格按考试时间做套卷,上午连续75题,下午连续两道大题,期间不翻书、不暂停,模拟真实考场压力。最后留两周:集中回顾错题,背诵高频考点,比如测试原则、测试流程、缺陷生命周期、性能指标计算公式等。
很多人在前两周就放弃了,原因是直接就开始啃教材,啃到第三章就腻了。正确做法是先做一套近年真题,感受一下考试难度和题型分布,再决定从哪里入手。我第一周就是先裸做了一套下午题,得分惨不忍睹,但也因此知道重点在哪里,后面看书时目标感完全不同。
3. 上午科目:知识面宽,必须有取舍
3.1 上午单选的重点章节
上午75题里,软件测试相关的题目大约占三成,是拿分的基本盘;软件工程、开发基础、数据结构、操作系统、数据库、网络这几块大约各占一成到两成;剩下的是法律、标准化、英语等杂项。
比较现实的目标是:测试相关题目尽量不失分,软件工程和数据库努力拿分,底层原理部分能对一半就行。这样算下来,上午过线并不难,前提是别在冷门知识点上钻牛角尖。
我整理过一份高频考点清单,如果你时间有限,优先看这些:
- 测试基础:测试定义、测试目的、测试原则、测试分类(单元、集成、系统、验收)
- 测试用例设计:等价类划分、边界值分析、因果图、判定表、正交试验法、场景法
- 测试覆盖率:语句覆盖、判定覆盖、条件覆盖、条件组合覆盖、路径覆盖之间的关系和区别
- 软件生命周期:瀑布模型、V模型、敏捷开发、DevOps
- 缺陷管理:缺陷定义、缺陷生命周期、严重程度与优先级、缺陷报告要素
- 性能测试:负载、压力、并发、吞吐量、响应时间、TPS/QPS的基本概念
- 白盒与黑盒测试的典型方法
每年必考的东西就那么几个,一定要吃透。
3.2 按章节刷题的正确姿势
刷上午题,我推荐“按知识点分类刷”,而不是“按年份整卷刷”。以等价类划分为例,把近五年所有涉及等价类的题目找出来,一次做掉十几道,你会发现出题角度就三种:一是让你划分有效等价类和无效等价类,二是让你挑出划分错误的选项,三是结合边界值给一个具体输入范围判断用例是否合理。
分类刷完一遍后,再做整卷,正确率会明显提升。整卷的目的是训练节奏和查漏,我一般是每个周末做一套,做完当天只对答案、不细究,周日再集中看错题。
还有一个容易被忽略的点:上午题里会有一两道英文题。占比不高,一般是简单句子或者专业术语选择题。不用专门去背专业英语词汇,但像黑盒测试、白盒测试、等价类、边界值这几个常见词的英文还是要认识的。
4. 下午科目:动手能力才是决胜点
4.1 下午题的五种常规题型
下午科目一共五道大题,基本是:一道测试用例设计题、一道白盒测试题、一道测试管理或测试计划题、一道性能测试或自动化测试题、一道缺陷分析题。题型非常固定,只要每一类都练熟了,通过率会大幅提高。
以测试用例设计题为例,题干通常给一段需求描述,要求你设计若干条用例。这里考察的不是你写多详细,而是能不能体现“方法”。比如输入是一个日期校验功能,正确的做法是先做等价类划分:有效等价类包括正常年月日组合、闰年2月29日、闰年判断边界;无效等价类包括月份超出1-12、日期超出当月天数、非数字字符、空值。然后对每个等价类补充边界值,2月28日和3月1日就是典型的边界转折点。最后每一条用例都要写清楚编号、输入、执行步骤、预期结果。这样答出来,阅卷老师一眼就能看出你是真的懂测试设计。
我建议下午题要手写,不要只在电脑上打字。考试还是纸笔作答,提前适应手写速度和卷面布局很重要。一道设计题往往要写七八条用例,每条例三四行,写到手酸是正常现象。平时练的时候就用标准的A4答题纸模拟,把字体写清楚,格式统一,避免考场上出现“写不下、看不清楚、涂改太乱”这种低级问题。
4.2 白盒测试与代码分析题
下午题里经常会有一段简短的C语言或者伪代码,要求计算覆盖率、写出测试用例,或指出代码缺陷。这类题对没写过代码的人来说有心理压力,但实际上考察的点非常死。
你需要把判定、条件、语句这三个术语彻底区分开。语句覆盖是让每条语句执行一次,判定覆盖是让每个判定的真、假分支各执行一次,条件覆盖是让每个条件的真、假取值各出现一次,条件组合覆盖则是让每个判定里面各条件的真假组合都出现过。考试题目一般会问“达到某种覆盖率需要的最少用例数”,或者“按照给定用例能覆盖到哪些分支”,本质就是在考这几个概念之间的层叠关系。
计算最小用例数有个笨办法:画出程序的控制流图,圈复杂度求出来,至少是判定覆盖的下限。但考试不会出太复杂的图,你只需要熟练把if、else、while转换成控制流节点,就能应付。做这类题,一定要在草稿纸上画图,直接在试卷上数分支很容易数漏。
5. 性能测试与自动化测试的备考重点
5.1 性能测试:概念比工具重要
性能测试在下午题中出现频率非常高,但考查的工具主要是LoadRunner,偶尔涉及JMeter。考试不要求你会实际操作,而是考对概念、流程和结果分析的理解。
必背的点包括:性能测试的流程(需求分析、计划设计、环境搭建、脚本开发、测试执行、结果分析);负载模型如何确定;响应时间、吞吐量、并发用户数之间的关系;性能瓶颈的常见原因(数据库连接池过小、线程阻塞、缓存命中率低、网络带宽不足)。
有一类题是给一张性能测试结果表,要求你分析是否存在性能瓶颈。这时候要看趋势而不是孤立的数字。比如并发从100涨到200,响应时间从0.5秒涨到1.2秒,吞吐量从100涨到180,说明系统还在正常范围内;但如果并发从200涨到300,响应时间突然跳到8秒,吞吐量反而下降,这就说明系统已经过载,瓶颈大概率在应用服务器或数据库层面。答题时要把结论和依据对应起来,先给出判断,再用数据佐证。
5.2 自动化测试:了解原理、记住工具
自动化测试相关题目常涉及Selenium和LoadRunner。Selenium考定位元素的方式、WebDriver的工作原理、测试脚本编写的基本流程;LoadRunner考VuGen录制脚本、Controller场景设置、Analysis结果分析的基本概念。
备考时不需要真的去装环境,但要把关键术语记牢。比如Selenium中定位元素的方法:id、name、xpath、css selector、link text。考试可能给一个HTML片段,让你写出定位某个按钮的XPath,这类题就是送分题,平时多练几条XPath写法就能掌握。
自动化测试的趋势,比如关键字驱动、数据驱动,也是常考概念。数据驱动的核心是测试数据与脚本分离,关键字驱动的核心是封装关键字、让业务人员也能维护脚本。答题时用“我理解的自动化测试分层结构”来讲,比死背定义更容易拿分。
5.3 缺陷管理与测试文档
缺陷管理题和测试文档题经常是下午的压轴题。缺陷管理的考点集中在缺陷生命周期、缺陷状态流转(新建、打开、修复、回归通过、关闭、重新打开)、缺陷严重程度与优先级的关系。这里要特别记住:严重程度和优先级不一定成正比。一个易用性缺陷可能优先级很高,但严重程度很低;一个偶发崩溃可能严重程度很高,但优先级要看影响范围。
测试计划、测试报告怎么写,也是有套路的。测试计划要有背景、范围、策略、资源、排期、风险和准入准出标准;测试报告要有测试概述、环境说明、执行统计、缺陷分析、结论与建议。写这些题时,直接套模板是可行的,但一定要贴合题干中的项目背景来写,不要交一份“万能模板”上去。阅卷老师看得出你是否在真正回应题目。
6. 三个月备考过程中典型问题与解决方式
6.1 上午正确率上不去怎么办
我备考第二个月时,上午模拟得分一直徘徊在60分左右,离及格线有点悬。后来分析发现,丢分最多的是计算机网络和数据结构,而不是测试知识。原因是这两块基础薄弱,看书容易犯困,刷题正确率又低。
解决办法是降低目标:网络部分只抓OSI七层模型、TCP/IP分层、常见协议端口、IP地址分类这几个必考点;数据结构只抓线性表、栈、队列、树的基本操作和复杂度。彻底放弃红黑树、图的最短路径这类高难低频内容。放弃不是消极,而是把有限时间用在产出比更高的地方。调整后第三次模拟就到了55分左右,再做两套真题就能稳定在60分以上。
6.2 下午题总是写不满怎么办
下午题对表达要求很高,尤其是设计用例和分析题。很多人不是不会,而是写得太简单。比如题目让“简述性能测试流程”,只写“先计划,再执行,最后分析”是拿不到满分的。正确的方式是分阶段展开,每个阶段给出输入、活动和输出。例如测试计划阶段,要说明依据需求文档确定性能指标、建立负载模型、评估环境配置、编写测试计划文档;测试执行阶段,要说明按场景逐步加压、监控系统资源、记录响应时间与错误率。哪怕知识点没有遗漏,书面表达不够完整,一样丢分。
我给自己定了一条原则:下午题的回答要“让一个没做过这个项目的人,看完你的答案也能知道怎么操作”。按这个标准来写,基本不会写不满。另外,平时做题一定要限时,每道题控制在25分钟左右,否则上考场容易前松后紧,最后一道题草草收场。
6.3 刷题App的局限
刷题App适合做单选,但下午题千万不要只在App上看。一方面,App上答案解析往往太简略,你看完觉得自己会了,一合上手机就忘;另一方面,手写和看题完全是两种体验。我后期基本抛弃了App做下午题,每次都是在纸上完整作答后再对照答案逐句抠分,效果明显好得多。
7. 考前一个月的高效冲刺操作
7.1 建立一张“必背知识卡片”
考前一个月,我制作了一份电子版的速查卡片,每个主题一张,正面是概念框架,背面是典型例题。比如“测试用例设计方法”这一张,正面列出等价类、边界值、因果图、判定表、正交表、场景法的适用场景和步骤,背面贴上往年真题的答题结构。冲刺阶段就是反复看这些卡片,每天早晨花20分钟过一遍,做到看到知识点就能说出对应的题型和答题套路。
这个方法对记不住公式和概念的人特别有效。性能测试里的计算题,比如并发数、吞吐量、平均响应时间之间的关系,单纯背公式很容易记混,我会自己在卡片上画一个小例子,用具体数字跑一遍公式,记忆就牢固得多。
7.2 模拟考试的环境尽量真实
很多人备考时做得很好,但一上考场就发挥失常,原因在于没有模拟过完整的考试环境和节奏。上午和下午的考试是分开的,中间休息时间不长,你需要提前适应高强度书写带来的手部疲劳。我最后两周的周末,严格按照考试时间做两科真题:上午8点半到11点做单选,下午1点半到4点做应用技术。手机放客厅,草稿纸用A4,答题纸打印成考场样式。做完后不立刻对答案,先休息一下再复盘。
这个习惯还有一个额外好处:你会逐渐找到适合自己的时间分配。我自己的节奏是:上午前40道题30分钟左右,中间15道难题用10分钟,最后20题15分钟,剩下时间集中填卡和检查;下午每道题平均25分钟,留5~10分钟从头到尾检查一遍答题格式和关键结论。
8. 关于备考软件评测师,我最后想说的
如果你现在正处于“想考但不知道怎么下手”的状态,我觉得最有效的起步动作是:找一套近年真题,先以一个完全裸考的状态做一遍,尤其是下午题,哪怕写不出几个字也要硬写。这个过程会暴露你的薄弱点,也会让你直观感受到考试的题型风格。然后对照答案,把做错的题涉及的知识点在教程目录里标出来,这就是你后续复习的优先级清单。
我在备考过程中最大的体会是:软件评测师考试并不是一个“背背就能过”的考试,但它也绝没有难到可望不可即。上午靠积累,下午靠练习,两者都需要实打实地投入时间。如果你能做到每周拿出15到20个小时,连续坚持两三个月,这个证书基本就跑不掉了。
最后分享一个实操小技巧:下午题答题时,涉及测试用例设计的内容,每条用例的“预期结果”一定要写具体。比如输入一个密码框的值,预期结果不要只写“提示错误”,而是写“提示‘密码长度应为6-16位’且输入框边框标红”。这种细节在评分标准里是明确有分的,很多人丢了也不知道。备考最后阶段,我会专门训练自己把预期结果写得像一段真实需求描述,这也算是我从多次模拟考里总结出来的一个隐形加分项。