缺陷管理(bug管理)

119 阅读5分钟

1.什么是bug?

  • 漏洞缺陷+改进建议+不符合需求

不符合要求:实现的方法与需求文档不一样

2.Bug的等级

2.1 致命错误

  1. 常规操作引起的系统崩溃、死机、死循环、闪退
  1. 造成数据泄漏的安全性问题,比如恶意攻击造成的账户私密信息泄露
  1. 涉及金钱计算
  1. 阻断性测试,所有测试工作进行不下去(冒烟测试)—正确的密码登录不进去,并且核心功能需要登录

2.2 严重错误:critical

1、重要功能不能实现;

2、错误的波及面广,影响到其它重要功能正常实现;

3、非常规操作导致的程序崩溃、死机、死循环、闪退

4、外观(界面)难以接受的缺陷;

5、密码明文显示;(界面+数据库)

6、偶现的致命性bug

复现率:出现次数/测试次数

2.3 一般错误 major最多

不影响产品的运行、不会成为故障起因,但对产品外观和下道工序影响较大的缺陷

1、次要功能不能正常实现;

2、操作界面错误(包括数据窗口内列名定义、含义不一致);

3、查询错误,数据错误显示;

4、简单的输入限制未放在前端进行控制;

5、删除操作未给出提示;

6、偶现的严重性bug

2.4 细微错误 minro

  1. 界面方面的问题:描述性错误、错别字

2.5 改进建议

3.bug的描述

3.1 基本信息

  • Bug 编号:为每个 Bug 分配唯一标识符,方便跟踪和管理。如 JIRA 系统自动生成的编号。
  • 所属项目与版本:明确 Bug 出现的项目名称及具体版本号,便于确定问题范围。
  • 发现日期与报告人:记录发现 Bug 的时间和报告人,有助于后续沟通和追溯。

3.2 重现步骤

  • 环境信息:包括操作系统、浏览器及其版本、设备型号等。例如“Windows 10 系统,Chrome 浏览器版本 115.0.5790.102”。
  • 详细步骤:按操作顺序准确描述,每一步都要清晰、简洁且可操作。比如“1. 打开登录页面;2. 输入用户名 'testuser';3. 输入密码 '123456';4. 点击登录按钮”。
  • 前置条件:说明执行重现步骤前系统应满足的条件。如“用户已注册并处于激活状态”。

3.3 实际结果与预期结果

  • 实际结果:描述执行重现步骤后系统实际呈现的状态或行为。如“点击登录按钮后,页面无响应”。
  • 预期结果:说明按照正常逻辑,执行操作后期望系统出现的结果。如“点击登录按钮后,成功登录并跳转到用户主页”。

3.4 Bug 严重程度与优先级

  • 严重程度:反映 Bug 对软件功能、性能等方面的影响程度。常见分类有:
  • 致命
  • 严重
  • 一般
  • 轻微
  • 优先级:表示修复 Bug 的紧急程度,通常根据严重程度和业务需求确定。如高优先级的 Bug 需立即修复,低优先级的可在后续版本处理。

附件

  • 截图:直观展示 Bug 发生时的界面情况,帮助开发人员快速理解问题。
  • 日志文件:包含系统运行时的详细信息,有助于开发人员分析问题根源。
  • 视频:对于一些难以用文字描述的操作过程或动态问题,可通过录制视频提供更清晰的展示。

其他补充信息

  • 复现频率:说明 Bug 出现的概率,如“每次都出现”“偶尔出现(约 10% 概率)”等。
  • 可能原因:根据测试人员的经验和对系统的了解,推测 Bug 产生的可能原因,但需注明是猜测,最终以开发人员排查结果为准。

4.Bug周期

Bug 周期指从发现到最终解决所经历的流程,一般包含以下阶段:

  1. 发现阶段:测试人员、用户或开发人员在软件使用过程中发现与预期不符的情况,记录 Bug 详细信息,如出现环境、操作步骤、预期结果和实际结果等。
  1. 报告阶段:测试人员整理 Bug 信息,通过缺陷管理工具(如 JIRA、禅道)提交报告,详细描述问题并分配给对应开发人员。
  1. 确认阶段:开发人员接收 Bug 报告后,对 Bug 进行初步分析,判断是否为有效 Bug。若无效则关闭;若有效则评估影响范围和修复优先级。
  1. 修复阶段:开发人员针对有效 Bug 编写代码进行修复,完成后在开发环境进行自测,确保问题解决且未引入新问题。
  1. 验证阶段:测试人员对开发人员声称已修复的 Bug 进行验证。若验证通过,则关闭该 Bug;若未通过,重新将 Bug 打回给开发人员。
  1. 关闭阶段:经测试人员验证通过的 Bug 会被正式关闭,意味着该问题在当前版本中得到解决。

不同项目、团队和软件类型,Bug 周期会有差异。小型项目可能几天完成一个 Bug 周期,大型复杂项目则可能需数周甚至数月。