大家好,我是洋子
进入测试行业刚满3年了,毕业北漂也满3年了,回顾一下这3年的工作和生活
下面文章我将会从QA这个岗位的角度复盘一下这3年来的所思所想,有刚入行的小伙伴可能不太清楚QA(Quality Assurance)是什么意思,在国内的话,QA可以理解成就是测试工程师或者测试开发工程师
那测试和测开有什么区别呢,在我还是应届生的时候,我可能会认为测开就是只做测试工具或者测试平台的开发工作
而从业后的第2年到第3年后,我现在会说,测开这个岗位的本质和功能测试还是没有特别大的差别,在国内测开就是测试,岗位核心仍在于质量保障,对于业务线的QA来说,依然还是70%以上的时间还是在做业务测试,如果非要谈及测试和测开的区别,那么就是测开是需要基本的代码能力,能写脚本、工具或者平台
对于现阶段的测试行业的现状,有以下几点值得关注
- 降本增效: 测试岗本身属于成本岗位,最明显的感知就是大环境下,测试岗位在减少,即使在公司内部,就拿我目前所在的公司来举例,测试和开发人员比例在进一步拉大,由原来的1:7增加1:10以上,部分简单的需求已经拿给开发自测,测试不再介入,对于一些重复性的工作,功能测试在进一步外包化
- 大模型(如ChatGPT)的出现在未来或许将改变测试工程师的工作模式
- 难以沉淀新技术:测试在整体研发体系当中,始终充当的是一种辅助角色,做为上线前的最后一道关卡,有时候为了凸显自己的价值,往往还要通过测试左移的手段,提供工具给开发,而这些开发这些工具所用到的技术,因为跟业务贴合比较近,往往不具备普适性
从第1点和第3点来看,测试这个岗位不免确实有些尴尬,很难产生直接的生产价值,不产生价值意味着在公司不会受到重视(这种现象在中小厂会比较明显,大厂对质量的要求还比较高),需求测的好没有夸奖你,漏测了就甩锅给你,是的,确实如此,下面我们从测试做的日常工作,再来充分了解一下这个岗位
做为一个QA,做测试就是最基本的质量保障手段,常见的测试手段包括手工测试(功能测试、接口测试、白盒测试、单元测试)、自动化测试(接口自动化、UI自动化、单元测试自动化)以及非功能层面的性能测试
而测试要做的开发工作,不外乎是测试工具(可视化工具、脚本)-》测试平台,除此以外,建设自动化测试框架的工具方法,CI流水线维护写的Shell脚本,压测要编写的压测脚本也算在里面
看着上面测试的日常工作,像点点点,确实体现不出测试的价值,测试的价值到底在哪里,发现了几百个Bug算不算,在老板眼里,发现的Bug多确实谈不上一丁点价值
于是乎,对于测试来说,只能去围绕质量和效率开展专项,来体现自己的价值
质量专项的目的是通过一系列手段来减少线上问题的数量,降低线上问题的等级,线上问题一般会根据标准来确定等级,严重的线上问题会造成几万甚至上百万的GMV
- 稳定性测试:混沌工程(线上环境),异常测试(线下)
- SDK质量保障
- 众测、内部用户体验
- 线上监控(细化场景、端到端全链路),日志监控,以此来提测问题拦截能力
- 流程规范(准入准出标准、测试流程)
效能专项的目的则是缩短交付周期(研发-》测试-》上线),减少长尾需求,提高研发自测率
- 流量回放
- 测试环境治理
- 测试工具、平台
- 精准测试
- CI流水线、CD分级发布部署
- 自动化数据构造
- 代码覆盖率采集
- 无人值守
以上是常见的质量和效能专项,这些专项是否真正体现出价值其实还是在打问号,但是如果不做这些,做为QA确实就没有拿的出手的东西来了
回到自己的职业发展角度来看,工作到第3年后,我能明显感觉到自己开始走到职场的第一个瓶颈期,这种感觉不再是从学生时代对于自己技术的不自信,感觉自己什么都不会,相反而是在工作第3年后,对自己各项日常工作已经非常熟悉以后,不知道再深入哪块的无力感
继续往下面走,我时常问自己?还是要继续做测试吗,还是转开发,转产品?我的内心告诉我,在分析各种利弊以后,继续做测试确实是我当前的最优解,我或许会继续从事测试,但可能会换个环境,当前环境已经陷入了一种舒适圈
说来也巧,有幸能够在一家公司体会到业务从兴盛时期,到彻底瓦解的全过程,业务发展初期需求爆炸,见过凌晨45点下班天已经亮的场景,而到业务衰退末期,业务需求急剧减少,在业务发展的整个生命周期里面,互联网给我最大的感受就是变化真的太快
今天就写这么多吧