工作中,测试人员有时会遇到类似的问题:提交了一份软件缺陷报告,可由于某种原因,无论是开发人员还是开发经理就是不愿修改程序。应如何处理这类问题呢?我认为,当对报告出现分歧意见后,测试工程师应首先做如下第一、二步分析:
    
    一、问题确认与评估
    再次论证该问题确实是程序缺陷,并评估该缺陷的重要程度并对其分类。比如可存在以下分类:
    
    1、设计文档范围内的功能性缺陷
    2、影响到程序的安全性和稳定性缺陷
    3、界面缺陷
    4、一般性错误(如未考虑边界检查等)
    5、边缘死角,规律不明显,不太容易重现的错误
    6、兼容性错误(例如旧机型、CPU\MEM,旧标准等等)
    7、安全性或易用性等的修改建议
    ……(可扩展)
    
    二、明确Dev不修改该缺陷的确切原因
    比如可存在以下原因:
    1、规律不明显,不好重现
    2、dev认为是不影响主要功能的一般性bug,因时间处于版本的稳定期,担心牵一发动全身引起更多错误
    3、调用了第三方组件或库函,是第三方程序存在的缺陷
    4、存在技术难点
    5、设计本身存在问题,程序逻辑是正确的,但实现结果并非用户所需(换言之,dev说这是设计问题,不是程序问题)
    6、Dev的个人主观意见:
该瑕疵可以容忍,没必要修改
修改该瑕疵会引起更大的问题
    7、Tester和dev对错误的理解有分歧:
tester理解错误,该问题并不是bug
tester没有说服dev这是个bug
    
    ……(可扩展)
    
    三、具体问题具体分析
    分析完第一、二步之后,也就基本上明确了问题的争议焦点,然后具体问题具体分析。
    1、如果dev认为不好重现,则tester有责任和义务找到更简洁有效的重现规律。
    2、如果tester没有说服dev认识到这是个缺陷,则需要拿出强有力的证据(测试用例、设计文档、错误现象等)来证明。
    3、对于第三方库函bug,或技术难点导致的bug,则坚持原则--宁缺勿滥,必要时宁可封掉该功能。
    4、针对错误的设计、不能说服的dev主观理解、改动隐患,以及稳定期等特殊情况,则可通过TM进行多方沟通。
    
    四、发挥TM与PM的沟通职责
    强调沟通
    TM和PM有团队沟通的职责。在bug分类、指派和反馈过程中出现有争议的问题时,TM和PM有责任和义务进行干预。根据问题的重要程度和轻重缓急,采取不同的方式进行沟通。如出现“三”中3、4类较大争议的问题,可通过会议研讨等形式召集多方进行论证,并达成一致的解决意见,解决方法形成备忘录。
    
    对因各种原因继续保留在发布版本中的bug,尤其可能影响功能的,应予以说明,提醒用户绕过。

如何处理与开发有争议的Bug?的更多相关文章

  1. 开发认为不是bug,你该如何处理?

    这是软件测试员面试时经常被问到的问题.看了很多答案,个人觉得作为有工作经验的测试人员回答时不能完全照搬标准答案,技术面试官想听的当然不止如此.毕竟这种情况在实际工作中也常常出现,具体问题要具体分析,你 ...

  2. [课程设计]Scrum 3.5 多鱼点餐系统开发进度(修复Bug&美化页面)

    Scrum 3.5 多鱼点餐系统开发进度(修复Bug&美化页面) 1.团队名称:重案组 2.团队目标:长期经营,积累客户充分准备,伺机而行 3.团队口号:矢志不渝,追求完美 4.团队选题:餐厅 ...

  3. 如何更有效地说服开发接收你的bug?!

    来来来,测试小伙伴们,看看以下这张图是不是觉得很熟悉.. 虽然这张图带点戏谑的成分,但确实折射出大部分IT公司测试人员在报bug时,与开发的沟通存在些许问题.如何更有效地说服开发接收你的bug,以下整 ...

  4. IDEA插件(Android Studio插件)开发示例代码及bug解决

    IDEA插件(Android Studio插件)开发示例代码及bug解决 代码在actionPerformed方法中,有个AnActionEvent e 插件开发就是要求我们复写上述的这个方法即可,在 ...

  5. 怎样才能提交一个让开发人员拍手叫好的bug单

    怎样才能提交一个让开发人员拍手叫好的bug单 软件测试人员写得最多的文档就是测试用例和BUG,现在测试用例和BUG都没有标准的模板,每个公司使用的缺陷管理工具都有可能不一样,如果你换了一家公司就有可能 ...

  6. 如何通过热修复,搞定开发中的那些 Bug?

    作为程序员,Bug 修复终究是绕不开的话题,本期移动开发精英俱乐部讨论的主题便是 Bug 修复中的 Hotfix,即热修复.接下来让我们跟随大牛的脚步来了解 Hotfix,就算你不能一下豁然开朗,相信 ...

  7. 【iOS开发-56】案例BUG:button的enabled、控件的userInteractionEnabled以及两种提示框UIAlert和UIActionSheet

    接上述案例找BUG:[iOS开发-51]案例学习:动画新写法.删除子视图.视图顺序.延迟方法.button多功能使用方法及icon图标和启动页设置 (1)BUG:答案满了就不能再点击optionbut ...

  8. 终于,帮开发写了一个bug

    写在文章的开头 最近项目比较紧,尤其前端的的需求比较多,作为一名测试,也会些vue,本着加快项目进度的美好想法,就自告奋勇的向组长承接了一部分开发的任务,其中有个需求需要在我们的广告管理后台新增一个上 ...

  9. .NET开发 正则表达式中的 Bug

    又发现了一个 .net 的 bug!最近在使用正则表达式的时候发现:在忽略大小写的时候,匹配值从 0xff 到 0xffff 之间的所有字符,正则表达式竟然也能匹配两个 ASCII 字符:i(code ...

随机推荐

  1. 网络服务器带宽Mbps、Mb/s、MB/s的区别

    例如所谓 10M 带宽,其实是指 10Mbps (兆比特) 计算带宽理论最快下载速度:10÷8=1.25MB/s 那么100M的带宽最快下载速度是12.5MB/s. 但这只是理论上的速度,在这个数值附 ...

  2. flask之flask-restful

    0.需要的库flask_restful from flask import Flask from flask_cors import CORS 1.参数的获取self.parser.add_argum ...

  3. onItemLongClick事件的监听

    首先需要implements public class MainActivity extends AppCompatActivity implements OnItemLongClickListene ...

  4. UniDac 使用日记(转)

    UniDAC使用日记 1.        UniQuery默认状态为行提交,使用前根据需要设置readonly或cachedupdates属性 2.        UniQuery.Filter默认大 ...

  5. sql server中类似oracle中decode功能的函数

    sqlserver 2008 写法 select t.PROJECTNAME, t.BUILDCONTENTSCALE, CASE t.PROJECTLEVEL ' THEN '国家重点' ' THE ...

  6. 【转】Jmeter内存溢出处理方式记录

    方法一: 使用jmeter进行压力测试时 遇到一段时间后报内存溢出outfmenmory错误,导致jmeter卡死了,先尝试在jmeter.bat中增加了JVM_ARGS="- Xmx204 ...

  7. python开发模块基础:异常处理&hashlib&logging&configparser

    一,异常处理 # 异常处理代码 try: f = open('file', 'w') except ValueError: print('请输入一个数字') except Exception as e ...

  8. git学习2 - 安装

    msysgit是Windows版的Git,从https://git-for-windows.github.io下载(网速慢的同学请移步国内镜像),然后按默认选项安装即可. 安装完成后,在开始菜单里找到 ...

  9. Python Twisted系列教程11:改进诗歌下载服务器

    作者:dave@http://krondo.com/your-poetry-is-served/ 译者:杨晓伟(采用意译) 你可以从这里从头阅读这个系列. 诗歌下载服务器 到目前为止,我们已经学习了大 ...

  10. Python Twisted系列教程5:由Twisted支持的诗歌客户端

    作者:dave@http://krondo.com/twistier-poetry/  译者:杨晓伟(采用意译) 你可以从这里从头开始阅读这个系列 抽象地构建客户端 在第四部分中,我们构建了第一个使用 ...