小明入职已有两年,期间测试能力已不知不觉成长许多,得到了Leader大熊的高度认可。回首这两年间,小明对“Bug总结流程”印象最为深刻,他对这个流程的认识在不断改变着:从最初的好奇,逐步变为反感,最终因为收益良多,重新走向认同。今天我们来介绍下这个流程。

两年前的某天,大熊在思考一件事情:如何能够帮助组员快速提高测试技能

以往的管理经验告诉他,只是安排一些讲座培训无济于事,如果没有实际的实例与测试理论知识贯通,这就如同学校里照本宣科一般无法学以致用;同时没有实际的示例,很多异常测试点总是遭到组员的质疑(例如:有同学就会质疑网络返回超时这种情况不用测试吧)。

“理论”、“实践”、“说服力”、“知行合一”,这些名词在大熊的脑中不断地闪现,最终一根线将这些词汇串联在了一起:基于线上漏测问题的Bug总结流程。

Bug总结思想

  1. 对线上漏测的问题进行收集

  2. 对每一个漏测的问题详细分析Bug机理以及漏测的原因

  3. 基于以上的原因思考如何进行改进,避免漏测问题发生

  4. 将改进方案实施

  5. 重复以上的步骤,通过正向循环推动测试团队的质量改进不断优化

Bug总结流程:

为了便于流程的运转和操作,大熊在Cynthia系统上建立了总结流程和表单:


举例说明:

某天,小明测试的搜狗手机输入法项目在上线后,出现了许多线上统计数据不正确的问题。小明收到这个问题反馈后,第一时间跟进和处理问题,确认问题存在,同时配合开发等人一同追查问题原因,后该问题经过追查,原因是覆盖安装所致,开发随后根据该问题进行了问题修正。

流程演练:

1.大熊收到这个问题后,会让小明将此问题录入Cynthia的总结表单

2.小明根据跟进了解的信息,在Cynthia上分别填写:

a.问题原因(包括开发原因和测试原因)

开发原因:

用户在客户端操作之后的pingback不会立即写进这个文件, 会在几种情况下(输入法崩溃,退出,关机,进入设置界面)保存文件.
文件保存位置/data/data/com.sohu.inputmethod.sogou/files/shared_prefs
/com.sohu.inputmethod.sogou_preferences.xml。旧版本按照旧格式保存文件,开
发在代码中没有考虑兼容旧格式的pingback,所以第一次读取旧版本已经保存的文件时, 会因为格式不兼容而读错位, 又由于错位,
某些本应以字符串方式解析的pingback错误地以整数方式解析, 导致解析过程中断(具体来说, 130为止会中断), 结果就是,
130以前的读错位, 130以后的丢失,所以会影响全部的pingback。新旧格式存储见附件。

测试原因:

1)测试对pingback模板的开发实现了解不够全面深入,导致pingback模块有修改时,还停留在黑盒测试层面;

2)测试设计考虑不足,输入法覆盖安装的case漏测。

b.问题分类(该问题属于什么类型)

示例中的问题由于没有进行开发改动的实现了解,所以问题类型判定为“用例设计不足->设计层面了解不足”和"测试经验,测试发散度不足"

c.开发解决方案

    先判断第一位是否为空,如果不为空(旧格式),将旧格式映射到新格式上,再按照新格式读取;如果为空,直接按照新格式读取

d.测试改进方案(根据问题原因来推导如何进行改进,避免类似问题重复发生)

1)从V8.8版本开始,测试组对每个模块都要绘制开发实现流程图,以进一步深入了解开发实现;

2)在上线前测试checklist中特增加覆盖安装的case,从流程上保证测试质量;

3)在流程上,对代码优化或代码重构等技术需求进行改动内容调研,并产出【影响范围】评估报告。

4)整理pingback测试点形成文档,每次测pingback时都按照该文档进行。若pingback有改动,在此基础上添加测试点。

3.大熊对小明填写的表单各项内容进行审核,各个字段的内容了解深入、填写无误后,大熊置为审核通过,该表单会处于改进方案实施中。

4.后续大熊会督促小明的改进方案实施,如:小明整理pingback测试点文档。

5.当以上改进方案实施完毕后,小明将此表单置为改进完毕交由大熊审核关闭。

正是通过以上流程,小明在这两年期间积累了非常多的经验,测试能力稳步提高,逐渐成为了团队的顶梁柱。

“反省是一面镜子,它能将我们的错误清清楚楚地照出来,使我们有改正的机会。——海涅”

Bug总结流程的更多相关文章

  1. BUG处理流程说明

    一.        BUG处理流程图: 流程描述: 1.  测试人员发现bug提交给开发. 2.  开发人员判断是否是bug. 3.  如果是bug,进行修改,修改完成后更改bug状态为已解决. 4. ...

  2. 软件测试面试必问--bug交互流程

    目前市场主要用的bug管理工具:禅道.jira.QC.bugfree等,当然也有自己公司开发的. 不过不管哪一种工具,核心交互流程都是差不多的,只是字段的名称不一样而已,参考如下两张示意图: 这是前几 ...

  3. 敏捷开发系列学习总结(2)——Bug修改流程

    原则,力求各司其职,简单明了. 1. 测试人员提交bug ⑴ 标题: [ 模块名称 ] 问题描述 ⑵ 内容: 问题重现步骤的描述,最好贴上图片. 因为一图胜万言. ⑶ 指定责任人: 根据bug指定责任 ...

  4. 解决一bug的流程复盘

    听同事说有一个功能不好使了,当时有事,过了一段时间来看看这个bug 解决问题时,看的是老的日志,根据老日志看来看去没有发现问题,觉得很困惑 然后手动执行了一下,发现问题没有重现.与另一个团队的同事沟通 ...

  5. 线上Bug修复流程

  6. bug的处理流程

    又属于一篇普及文,希望自己在被各种技术吸引的同时,能时常来整理和总结软件测试最基本的知识. 从刚工作时接触的第一个缺陷管理工具禅道,到redmine.JIRA.bugzilla ,再到现在的QC,当然 ...

  7. Bug跟踪的流程

    本文以翼发云协同项目管理系统为例子来讲解Bug跟踪的流程,它以工作流为中心的集成式Bug跟踪软件,它广泛地应用于研发行业的产品缺陷管理 与跟踪.事务跟踪.问题跟踪.任务跟踪.查询跟踪.需求管理.变更跟 ...

  8. Git之修复Bug流程

    场景描述 当一个项目已经上线,同时又在原有基础上新增功能模块,于是乎就要在原有代码的基础上进行开发,在新增模块功能的开发的过程中,项目发现了一个紧急Bug,需要修复.应对这种情况,有以下两种解决方案: ...

  9. 流程开发Activiti 与SpringMVC整合实例

    流程(Activiti) 流程是完成一系列有序动作的概述.每一个节点动作的结果将对后面的具体操作步骤产生影响.信息化系统中流程的功能完全等同于纸上办公的层级审批,尤其在oa系统中各类电子流提现较为明显 ...

随机推荐

  1. Microsoft Azure 云存储服务概念

    本文包括了以下几点内容: 什么是Azure云存储服务? 云存储服务分类 云存储服务的优势 什么是Azure云存储服务? Azure 云存储服务可以说是Azure 上最重要的SAAS服务了. 在Azur ...

  2. 手机sdk 开发

    题记:很多做游戏开发的人,估计都或多或少地接过渠道SDK,什么UC,当乐,91,小米,360......据统计国内市场当前不下于100家渠道,还包括一些没有SDK的小渠道.每个渠道SDK接入的方法呢, ...

  3. C#:时间转换

    1.C#时间转js时间 /// <summary> /// C#时间转js时间 /// </summary> /// <param name="theDate& ...

  4. QT常规控件操作备忘

    QLabel设置边框和颜色: label->setFrameShape (QFrame::Box); label->setStyleSheet("border: 1px soli ...

  5. 数据持久化以及DAO模式的简单使用

    持久化:(是将程序中的数据在瞬时状态和持久状态间转换机制)        即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘).持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然 ...

  6. centos7安装http服务

    1.yum安装http [root@localhost ~]# yum install httpd -y 2.启动http服务 [root@localhost ~]# systemctl start  ...

  7. UNIX网络编程卷1 第一章 简介 读书笔记。

    基本没讲什么,一点点计算机网络发展史,一点点socket()简单介绍,最重要的是1.3节协议无关性. 协议无关性: 贯穿整本书的一个重要特性,他主要强调的是 socket是网络协议无关的编程接口. s ...

  8. iOS runtime实用篇解决常见Crash

    程序崩溃经历 其实在很早之前就想写这篇文章了,一直拖到现在. 程序崩溃经历1 平时开发测试的时候好好的,结果上线几天发现有崩溃的问题,其实责任大部分在我身上. 我的责任: 过分信赖文档,没进行容错处理 ...

  9. mybatis批量插入返回主键问题

    今天整合mybatis时候用到返回主键问题,批量插入总是返回不了主键还报错. 记录入下: pom版本: <mybatis.version>3.2.6</mybatis.version ...

  10. 续并查集学习笔记——Gang团伙题解

    一言不合先贴题目 Description 在某城市里住着n个人,任何两个认识的人不是朋友就是敌人,而且满足: 1. 我朋友的朋友是我的朋友: 2. 我敌人的敌人是我的朋友: 所有是朋友的人组成一个团伙 ...