• 13
  • 12
分享
  • 被灵魂问倒:这个BUG为什么没测出来?——软件测试圈
  • 北极 2022-03-23 14:44:05 字数 1792 阅读 2430 收藏 12

一、前言

相信不少,应该说绝大数的测试同学都遇到过这样的场景,上线出现了BUG,被质问:

为什么没测出来!

测试怎么测得?到底会不会测?

这对测试来说是灵魂拷问级别不好回答的问题了。

那么我们遇到类似这样的提问该如何回答、解决呢?

二、如何回答和解决

其实当遇到线上出现问题的时候,不管这个问题是谁的锅, 先以解决问题为主, 先复现问题, 再配合开发调试定位问题进行修复, 然后测试完成进行紧急的修复上线才是最应该做的事情!

这个时候也不要进行任何甩锅的操作,也不要默不作声的不说话。

可以回答说:我们会在这个问题修复上线后进行复盘,找出问题出现的原因,如果是测试团队的问题,我们会主动承担责任并作出总结,避免下次再犯。

一定要体现自己的担当和冷静!

那该如何进行复盘呢?

首先就是分析是否是用例未覆盖到, 如果是,那不好意思了,这锅得背!说明在设计用例的时候未考虑到这样的场景, 然后做线上问题记录分析,在今后编写用例的时候针对类似的异常情况应该多考虑哪些场景,设计更为完善的测试用例。

在答复上级领导的时候可以这样回答:

由于在设计用例的时候考虑不充分导致了这个问题,我们内部已经针对此类问题做了相应的测试用例补充,并根据该问题的场景做了延展设计,防止类似的问题再出现!

并且已经在测试测试环境进行了新的测试, 上线后也做了相应的测试和回归测试,保证这个问题已经完全解决并不影响其他正常功能。

如果该类问题在线上能够复现,但在测试环境复现不了这种情况该如何处理呢?

这种情况可能是线上数据与测试数据差异的原因,也可能是部署线上环境的时候漏掉了一些配置脚本(sql脚本,阿波罗配置等)这种时刻就没必要背锅了!我们需要将此问题及时反馈给上级并记录。让他们进行协调沟通。

一句话总结:”做好自己的事,愿于接受批评和改正,但也不背不该背的锅!

三、质量全靠测试吗

测试工程师能测出所有bug吗?

这个问题就好像在问医生能不能治好所有的病一样!

没有哪个医生能治好所有的病!正如没有任何一个测试工程师能发现所有的BUG!

只要是软件,就一定会有bug。而测试工程师的存在,不是为了消灭bug,而是为了控制风险!

其实,产品上线出现问题是非常正常的事情,无论是我们熟知的微信,抖音,支付宝等都会在我们使用的时候发现BUG,记得之前使用掌上英雄联盟的时候,随便测了一下BUG一大堆!

但它们很少出现完全阻断用户体验,或者影响很严重的BUG,所以BUG测不完!但阻塞的,严重的BUG是一定测的完的!

测试人员首先要相信自己是个人不是神,如果要写尽测试用例,做遍所有的测试是不可能的。在实际的测试过程中,总是有重点有范围的去测试,澄清需求,发现设计缺陷,跟研发积极沟通,确认影响范围,完善测试范围,负责完成测试工作,线上问题及时复盘加入用例库等等。

四、被甩锅如何回怼

碰到线上BUG这种问题,毫无疑问是会扯皮的!

唯一的办法就是拿出日常工作的测试记录,特别是bug!一定要入库,不论BUG严重级别,或者是否能够复现,是否是经确认过可以暂时不处理的BUG,只要你觉得是BUG那就提出来,就算最后被确认不是BUG也要留档做记录。这是一个非常有效且重要的措施!

如果遇到你觉得很小的问题,只是简单跟开发说了一声,那最后背锅的可能就是你了!

另外就是做好总结,在开发测试过程中很容易遇到需求变更的情况,毕竟计划没有变化快,况且很多东西要实际开始做了才会发现需求或者技术上等需要变更实现方法的问题。

这些问题可以在群聊中进行讨论,但讨论后一定要有文档记录,类似在线文档:这个问题什么时间提出的,解决方法是什么,谁确定的都要详细的记录在文档中!

一句话总结就是:避免口头确认!!善用文档记录!!

五、总结

质量是个大问题,从产品、设计、开发、测试、运维都需要投入关注。

作为测试,是上线产品前质量保证的最后一道关卡!

需要更有责任心的去面对被测产品!

一个好的测试工程师,不应该仅仅以发现多少bug、发现多少严重级bug为荣,而应该努力做到通过控制流程,从源头上控制bug数量的产生!

测试工程师无法发现所有的BUG,只能在测试方法,测试用例上进行改进和优化,尽可能地降低风险!

所以不要太在意别人的发问,问问自己是否心虚,是否能够做的更好?

当然,如果心中无愧,那就不要背锅!!


作者:曲鸟

原文链接:https://my.oschina.net/u/4526289/blog/5374868

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   小米方面已经发出公告称,将用全新的「Beta版」模式替换当前的「开发版」模式,未来小米澎湃OS将提供两个版本,面向前期内测用户的「Beta版」,和面向全量用户的「正式版」。  从MIUI诞生至今,小米的开发版系统已经陪伴了用户将近13年的时间,该系统能够让用户快速用到新功能,非常适合极客用户使用。在MIUI正式升级为澎湃OS过后,小米继续提供着开发版系统,不过开发版已经走到了尽头,将会在2024年停止更新。  小米方面已经发出公告称,将用全新的「Beta版」模式替换当前的「开发版」模式,未来小米澎湃OS将提供两个版本,面向前期内测用户的「Beta版」,和面向全量用户的「正式版」。  Bet...
            0 0 829
            分享
          •   本文将讨论微服务测试的重要性、挑战和最佳实践。  微服务架构是一种越来越流行的构建复杂分布式系统的方法。在此体系结构中,大型应用程序被分成较小的、独立的服务,这些服务通过网络相互通信。微服务测试是确保这些服务无缝协同工作的关键步骤。本文将讨论微服务测试的重要性、挑战和最佳实践。  微服务测试的重要性  测试微服务对于确保系统按预期工作至关重要。与传统的单体应用程序不同,微服务由通过网络相互通信的小型独立服务组成。因此,微服务测试比测试传统应用程序更复杂、更具挑战性。尽管如此,测试对于检测系统中的问题和错误、提高性能并确保微服务正确有效地工作至关重要。  微服务测试对于确保基于微服务的应用程...
            0 0 948
            分享
          • 调用JMeter的 "jmeter -?"命令将打印所有命令选项的一个列表。列表说明如下:-h, --help 打印使用信息并退出-v, --version 打印版本信息并推出-p, --propfile {argument} 使用的JMeter属性文件-q, --addprop {argument} 附加的属性文件-t, --testfile {argument} 运行的JMeter测试文件(.jmx)-l, --logfile {argument} 日志取样文件-n, --nongui 非用户界面运行JMeter-s, --server 运行JMeter服务器-H, -...
            0 0 1313
            分享
          • 摘要:测试数据在项目开发、测试过程中占据着重要的作用,随着我行信息系统建设速度的加快,软件更新速度的不断提升,对数据交付时间和数据格式的要求也越来越高。对于数据库大表来说,无论是脱敏还是导出的速度,往往不能满足实际需要,Kettle作为业内最著名的开源ETL(数据抽取)工具,可直接对数据库表进行操作并以多种格式进行导出,格式规范,效率较高,能很好的满足使用过程中的需要。本文对kettle在实际中具体的使用与实践进行重点介绍。1、常用ETL工具现状简介ETL是Extract-Transform-Load的简写,用来描述将数据从源端经过抽取(extract)、转换(transform)、加载(lo...
            0 0 4372
            分享
          • 看完这篇文章,你将学到如何在 Windows 上搭建基本的 Selenium 自动化环境。1、本次使用的系统环境是最新的 Windows 10 17134 系统;2、本次使用的 Python 版本为 3.4.4,使用这个版本的原因是 3.5 以后就不支持 XP 系统了,但是我有需要 XP 环境的需求,所以一直用的 3.4 版本,Python 下载地址:https://www.python.org/downloads/3、本次使用的 Selenium 版本为最新的 3.13,如果你电脑只安装了一个版本的 Python 可以直接使用命令行进行安装。python -m pip install sel...
            1 2 2570
            分享
      • 51testing软件测试圈微信