测试工程师发现了软件的缺陷(bug),那修复bug的整个流程是怎么样的呢?

1、发现bug

2、和开发确认是否是bug

3、如果是bug则提bug单到测试经理,如果不是则放过

4、测试经理把bug单走到开发经理

5、开发经理分问题单到开发工程师手中定位

6、测试工程师定位完成后,把定位结论写到bug单中,然后走到开发经理处,让其审核定位

7、开发经理审核完成后把bug单走到开发工程师手中

8、开发工程师进行修改后,走到其他开发工程师中进行审核修改

9、审核完成后,走到开发经理处

10、转测试版本后,开发经理把修改的bug单走到测试经理处

11、测试经理把问题单分派到测试工程师手中,进行回归测试

12、回归bug单的过程中,有可能出现bug单回归不通过的情况,这个时候需要把bug走回到开发手中,回归通过关闭bug单

通过上面的12步骤,发现修复一个bug单的流程貌似很复杂,这个是一个标准的流程,很多小公司或者小团队,他们的bug单流程没有这么复杂,可能测试人员直接把bug单走到对应的开发工程师手中,开发修改完成转测试版本后,直接走回给测试工程师进行回归测试,这样步骤就减少了很多。

上面的流程都是理想状态,但是还有很多其他异常的情况,如下面所列举的:

1、bug单是偶现的,开发工程师和测试工程师都不能够复现,这种问题应该怎么样进行处理呢?公司中一般是这样处理的,连续三个版本不复现,bug单降级处理,如果是提示级别,连续三个版本不复现,这直接关闭。

2、开发工程师由于在确认bug单的时候不清楚需求,确认是问题,但是后面定位过程中发现不是问题,这种问题单怎么处理呢?这种比较特殊各个公司处理可能都不相同, 一般建议按问题解决处理,而不是非问题打回,因为在确认的时候是问题,这种问题不应该是测试承担。

3、bug单在回归测试发现修改不彻底或者修改老问题引入了新问题,这种都是bug单修改不通过。

4、在由于大多数情况下,开发对自己模块的bug都比较抵触,确认bug单的时候不配合怎么办, 有可能导致bug单不能够及时提交,导致开发经理和测试经理都错误估计测试进度和修改进度, 这个时候一般要求测试工程师当天发现的bug,必须当天提交到开发那边去, 如果开发工程师确认时间超过12个小时,可以直接提bug到开发那边去。

bug单的生命周期的更多相关文章

  1. 【测试基础第六篇】bug定义及生命周期

    bug定义 狭义:软件程序的漏洞或缺陷 广义:测试工程师或用户所发现和提出的软件可改进的细节(增强型.建议性)或需求文档存在差异的功能实现 职责:发现bug,提给开发,让其修改 bug类型--了解 代 ...

  2. 测试基础【第六篇】bug要素及其生命周期

    bug的要素 为了让开发人员更准确.更快的看懂Bug,测试需要按照一定的规范提交bug. 缺陷id:一般由缺陷管理系统自动生成: 缺陷标题:概要描述缺陷: 发现人:一般是缺陷管理系统自动获取当前用户: ...

  3. 07、NetCore2.0依赖注入(DI)之生命周期

    07.NetCore2.0依赖注入(DI)之生命周期 NetCore2.0依赖注入框架(DI)是如何管理注入对象的生命周期的?生命周期有哪几类,又是在哪些场景下应用的呢? -------------- ...

  4. 018-019 NET5_内置容器支持依赖注入+IServiceCollection的生命周期

    概念: DI依赖注入: IServiceCollection仅支持构造函数注入 什么是依赖注入? 如果对象A依赖对象B,对象B依赖对象C,就可以先构造对象C,然后传递给对象B,再把对象B传递给A.得到 ...

  5. (四)一个bug的生命周期

    Bug的属性 Bug重现环境 这个应该是我们重现BUG的一个前提,如果没有这个前提,我们可能会无法重现问题,或者根本就无从下手. • 操作系统 这个是一般软件运行的一大前提,基本上所有的软件都依赖于操 ...

  6. Spring Bean配置默认为单实例 pring Bean生命周期

    Bean默认的是单例的. 如果不想单例需要如下配置:<bean id="user" class="..." scope="singleton&q ...

  7. bug生命周期&bug跟踪处理

    一.BUG BUG:软件的缺陷 1.BUG的定义:----与软件测试的目的对应 软件的BUG,狭义概念是指软件程序的漏洞或缺陷,广义概念除此之外还包括测试工程师或用户所发现和提出的软件可改进的细节.或 ...

  8. $Django orm增删改字段、建表 ,单表增删改查,Django请求生命周期

    1 orm介绍  ORM是什么   ORM 是 python编程语言后端web框架 Django的核心思想,“Object Relational Mapping”,即对象-关系映射,简称ORM.  一 ...

  9. Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

    一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process ...

随机推荐

  1. MySQL查看最大连接数和修改最大连接数

    MySQL查看最大连接数和修改最大连接数 1.查看最大连接数       show variables like '%max_connections%'; 2.修改最大连接数       set GL ...

  2. java.sql.SQLException:Invalid value for getInt()-'zhangsan'

    1.错误描述 java.sql.SQLException:Invalid value for getInt()-'zhangsan' 2.错误原因 在遍历打印查询结果时,rs.getInt(3),而在 ...

  3. Ball HDU - 4811

    Jenny likes balls. He has some balls and he wants to arrange them in a row on the table. Each of tho ...

  4. linux之软件安装

    一.软件包管理简介 1)软件包分类 1.源码包 优点: 开源, 如果有足够的能力, 可以修改源代码 可以自由选择所需的功能 软件是编译安装, 所以更加适合自己的系统, 更加稳定也效率更高 卸载方便 缺 ...

  5. Readis For Windows安装及密码、IP限制

    一.下载与安装Readis Github下载地址:https://github.com/MicrosoftArchive/redis/tags 下载.MSI后下一步安装即可 二.验证安装 1. 在&q ...

  6. RobotFramework自动化测试框架-移动手机自动化测试Get Network Connection Status和Set Network Connection Status关键字的使用

    Get Network Connection Status关键字用来获取手机的网络连接状态.在获取到连接状态后,会返回不同的数字. Set Network Connection Status关键字用来 ...

  7. [AH/HNOI2017]单旋

    这道题可以用LCT做,开set,LCT,二叉树 操作1:直接开set,找到它要插入的位置,一定是前驱,后缀中deep最大的(显然手玩) 操作2:set+LCT询问路径,直接手动提上去,因为树的形态不变 ...

  8. Tomcat 设置开机自启

    操作系统centos6.5: Vim /etc/rc.local在末尾添加一下两行 source /etc/profile /test/tomcat/bin/startup.sh 我解释下为什么要加s ...

  9. 进一步理解阿贾克斯(Ajax)

    一.ajax简介 1.Asynchronous JavaScript and XML(异步的Javascript和XML) 2.是一种在无需重新加载整个网页的情况下能够更新部分网页的技术. 二.aja ...

  10. 小程序 for循环 报错 Cannot read property 'total' of undefined

    for循环一直报错  Cannot read property 'total' of undefined,但total在起初是有定义的,后来找到了问题,是i<=的问题,改为<不报错了. i ...