测试工程师发现了软件的缺陷(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. HighCharts之2D折线图

    HighCharts之2D折线图 1.HighCharts之2D折线图源码 line.html: <!DOCTYPE html> <html> <head> < ...

  2. freemarker报错之九

    1.错误描述 五月 30, 2014 11:52:04 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template proc ...

  3. 小白学爬虫-设置Selenium+Chrome代理

    微博登录限制了错误次数···加上Cookie大批账号被封需要从Cookie池中 剔除被封的账号··· 需要使用代理··· 无赖百度了大半天都是特么的啥玩意儿???结果换成了 Google手到擒来 分分 ...

  4. Redis进阶实践之十五 Redis-cli命令行工具使用详解第二部分(结束)

    一.介绍           今天继续redis-cli使用的介绍,上一篇文章写了一部分,写到第9个小节,今天就来完成第二部分.话不多说,开始我们今天的讲解.如果要想看第一篇文章,地址如下:http: ...

  5. java实现全排列问题

    1.问题描述: 一组字符串的全排列,按照全排列的顺序输出,并且每行结尾无空格. 2.输入: 输入一个字符串 3.输入示例: 请输入全排列的字符串: abc 4.输出示例: a b c a c b b ...

  6. jQuery.isPlainObject()的作用

    jQuery.isPlainObject()函数用于判断指定参数是否是一个纯粹的对象. 所谓"纯粹的对象",就是该对象是通过"{}"或"new Obj ...

  7. 总结各类错误(always online)

    最近发现打暴力(还有梦想中的正解)都会打错,决定好好总结一下各种坑比错误QAQ 1.一定要好好看数据范围,接近int类型上限,如果要求和,一定要开long long并且改大你的inf值(TAT暴力分流 ...

  8. 【BZOJ1216】操作系统(堆,模拟)

    [BZOJ1216]操作系统(堆,模拟) 题面 题目描述 写一个程序来模拟操作系统的进程调度.假设该系统只有一个CPU,每一个进程的到达时间,执行时间和运行优先级都是已知的.其中运行优先级用自然数表示 ...

  9. Vue-自定义事件之—— 子组件修改父组件的值

    如何利用自定义的事件,在子组件中修改父组件里边的值? 关键点记住:三个事件名字 步骤如下: 这里,相对本案例,父组件定义为Second-module,对应的子组件是Three-module 第一步:你 ...

  10. equals与==号的区别?

    equals与 == 的区别 初学Java的人(me),有很长一段时间对equals()这个方法感到很懊恼,实在是弄不明白到底何时比较的是地址,又什么时候比较内容呢?因为要找工作,要面试.本人通过查阅 ...