上个月面了个测试岗的软件人员人候选人,简历上写着"精通自动化测试",测试聊了十分钟发现他连Page Object模式都说不清楚。短期这不是展规个例。我见过太多测试人员把"学习自动化"挂在嘴边,软件人员人实际工作中却连最基本的测试接口断言都写得漏洞百出。
短期规划这件事,短期对测试人员来说,展规核心就一句话:别贪多,软件人员人先把手头能落地的测试东西砸实。
先搞清楚自己现在值多少钱
打开招聘网站,短期搜你所在城市、展规你目前年限的软件人员人测试岗位。把JD里出现频率最高的测试技能列出来,再对照自己的短期实际能力打个分。我敢打赌,很多人会发现一个尴尬的事实:自己日常做的功能测试,在市场上已经卷成了白菜价,而JD里要求的那几项技能,自己顶多算"听说过"。
有个前同事,做了三年功能测试,一直觉得"自动化是高级测试才玩的东西"。直到公司裁员,他出去面试才发现,连小公司的测试岗都要求会写Python脚本。后来他花了两个月,把requests库和pytest框架啃下来,配合自己原来的业务理解,跳槽涨了40%。他跟我说了句大实话:"以前总觉得学自动化要花半年,其实上手只要两周,剩下的都是在项目里练出来的。"
别从"学一门语言"开始
这是我最想说的一个观察。太多人规划的第一步是"学Python",然后买本书从变量类型开始看,看到面向对象就放弃了。正确的路径应该反过来——先找一个你现在工作中重复劳动最多的场景,用脚本把它干掉。
比如你每天要手动造十条测试数据,那就去搜"Python怎么读写Excel",把这段代码跑通。比如你每次回归都要手动点二十个页面,那就去搜"Selenium怎么定位元素",先让浏览器自己动起来。这种"问题驱动"的学习方式,比系统啃教材快三倍,而且你马上能在工作中看到效果,正反馈来得特别快。
接口测试是性价比最高的切入点
功能测试转技术方向,接口测试是最短的路径。原因很简单:它不需要你懂前端框架,不需要你搭复杂的环境,一个requests库加一个断言就能跑起来。而且接口测试直接触达业务逻辑,你原来做功能测试积累的业务理解完全用得上。
我自己的经验是,花一个周末把公司核心业务的接口文档翻出来,挑五个最常用的接口,用Python写一遍请求和校验。下周上班的时候,用这些脚本替代一部分手工回归。再下周,试着把断言写得更细一点,加上数据库校验。一个月下来,你就能在简历上写"独立搭建接口自动化测试框架"了——前提是你真的动手写了,而不是收藏了二十篇教程。
给自己定一个能验证的deadline
"三个月内提升自动化能力"这种目标等于没定。换成:"6月30号之前,把订单模块的接口自动化用例写到50条,并且接入CI,每天定时跑。"这个目标有具体数字、有明确时间、有可验证的结果。完成了就是完成了,没完成也能清楚知道卡在哪。
短期规划不需要多漂亮。能落地的计划,比完美的空想有用一百倍。测试这行,手上有活,心里才不慌。