为什么需要测试工程师?

发表于:2020-4-13 11:31

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:兰希姑娘    来源:兰希姑娘

  知乎上有个帖子,“为什么互联网公司不开除测试,转而让大众来测,找到一个bug给100元?”
  这是个好问题,这个帖子隐含的观点是测试是必须的,但是否需要专职测试人员需要讨论。要回答这个问题,不妨采用逆向思维来看。
  假如没有测试工程师
  小A在一家互联网公司上班,岗位是研发工程师,某天,产品同学小B出了一个手机客户端升级需求,小A收到邀请,去参加需求评审,小A一听,这需求实现不难,就爽快的给了排期,小A开发工作基本结束了,开始自测,小A想,我写的代码健壮性一直很好,大部分功能肯定不会出现什么问题,我只需要验证自己认为可能存在问题的功能就可以(自测缺乏主观认知的客观性)。
  小A如期完成开发,小B验收了下,功能基本符合要求(产品一般只关注主流程功能正常)。
  接下来小A联系运维同学小C,小C非常熟练的和小A一起完成了上线。上线后,小B发现功能不可用,小C紧急排查上线系统,哦,原来是线上系统的问题(上线阶段运维带来的质量问题)。小C紧急修复系统,系统修复后,问题还是存在。
  最后追查发现,原来是环境变量存在问题,之前小A一直在自己的开发环境测试,所以一直没发现这个问题(自测盲区)。小A想,这个问题好解决,没多少功夫,就修复上线了。
  第二天,小B愉快的发了上线通报,老大们纷纷围观。
  老大充满期待的试用产品,却发现首页的某个功能键被遮挡,小A/B同时说,怎么可能,我们测试的时候好好的。最终定位发现,原来是手机兼容性问题,正好老大的机型触发了这个问题。小A紧急修复,本来觉得一会就可以搞定的问题,花了1天才最终搞定。最终这个问题导致,该机型的全部用户2天无法完成下单操作,影响业务收益xx,对此,小A做了深刻的case study。study后留给小A 两个todo:如何避免此类问题发生,如何更快的发现定位问题。
  为了避免此类问题的发生,小A不仅研究了如何做兼容性测试,更深刻研究了如何做端测试(测试技能需要专业训练)。了解后发现,如果想要做好端测试,天呀,比自己的开发时间占比都长,不行,得思考如何提升测试效率,这样自己就可以把精力放在架构性能提升上了,所以,小A又研究了如何做端自动化,什么Monkey 、Appium,看得眼花缭乱,小A发现,开发端自动化工具,比业务逻辑都难,不仅需要考虑软件问题,硬件网络等知识也需要恶补。
  由于本次问题没有及时发现并定位,造成了严重的业务损失,小A反思了下,如果要及时发现并定位,就必须做一些监控定位工具,这些东西同样,需要很大的精力。
  小A很困惑,花这么大精力做这些事情,跟自己角色的定位不match,不做的话,有风险需要自己扛着,于是去跟老大们请教。
  老大们也觉得是个问题,经过多次讨论发现,大家都存在同样的困惑,于是决定成立一个测试小组,专职做测试方法调研和测试工具开发,并协助负责开发的同学进行测试(测试开发工程师),这样的话,研发同学就可以专注业务研发了。
  这样一来,小A之前自测遇到的的自测缺乏主观认知的客观性、自测盲区、测试占用大部分精力的问题都解决了。
  不仅需要测试工程师,更需要专业的测试工程师
  每个角色是否存在,本质上就是看投入产出比有多高。如果你的产品出现问题,会带来严重的收入损失,那么测试是必须做的。而为了提升测试的质量和效率,专业的测试工程师就是必须的,所谓术业有专攻。
  从上面的逆向思维也可以看出,测试不是单个环节要做的事情,而是项目整个迭代周期都需要关注的事情,也就是全流程质量保障。专业的测试工程师,需要整体规划全局质量、协调各个角色完善风险拦截机制,提供专业的测试技术支持工作。
  回到最初的问题,你如何看待“为什么互联网公司不开除测试,转而让大众来测,找到一个bug给100元?”。
  答案估计不必再说了。

      本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号