行业动态

软件测试之为什么需要测试工程师?

软件测试之为什么需要测试工程师?

  知乎上有个帖子,“为什么互联网公司不开除测试,转而让大众来测,找到一个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元?”。

  答案估计不必再说了。
  以上是关于软件测试的知识,由多测师亲自撰写! https://www.duoceshi.com/

新闻资讯

联系我们

联系人:王女士

手机:17727591462

电话:0755-21072941

邮箱:hr@duoceshi.com

地址: 广东省深圳市龙华区龙华街道清湖和平路62号优鼎企创园D栋201室,202室

用手机扫描二维码关闭
二维码