简单高效的 Bug 提交指南

一份清晰、准确的 Bug 报告是我们之间最高效的沟通桥梁,它能帮助我们更快地定位和修复问题,提升产品质量。请在提交 Bug 时遵循以下规范:

一份标准的 Bug 报告包含以下内容:

1.【标题】

  • 目标:用一句话说清楚“在什么场景,发生了什么问题”。
  • 格式推荐【问题模块/类型】一句话描述问题
  • 示例
    • 【闪退】在书架界面点击任意书籍时 App 闪退。
    • 【UI显示错误】书城封面的图片被拉伸变形。
    • 【功能无效】退出登录后,“我的”依然显示为登录状态。

2.【App 版本】

  • 目标:明确问题发生的应用包名与版本。
  • 示例西西小屋V1.6.7

3.【测试环境】

  • 目标:提供问题复现时的设备和网络信息等,这对于排查兼容性问题至关重要。如果一个问题只在特定条件下出现(例如,只在某部手机上,或只在WiFi下),请务必填写此项。如果任何情况下都能出现,则可以不填。
  • 内容通常包含
    • 设备型号: 例如 iPhone 13 Pro, 华为 Mate 50 Pro
    • 系统版本: 例如 iOS 16.5, HarmonyOS 3.0
    • 网络环境: 例如 WiFi, 5G/4G

4.【Bug 类型】

  • 目标:对问题进行分类,方便统计和分配。
  • 常见类型:功能问题、UI显示错误、App闪退/卡顿、兼容性问题、性能问题、错别字等。

5.【严重程度】

  • 目标:评估问题对用户体验的影响程度。
  • 等级划分:致命、严重、一般、轻微、建议。(具体定义见文末附录)

6.【重现路径 】

  • 目标:提供清晰、准确、无歧义的步骤,让开发同学能独立复现问题。这是整个报告中最核心的部分!
  • 编写技巧
    1. 从启动 App 开始:确保步骤的完整性。
    2. 一步一操作:每个步骤只描述一个清晰的动作。
    3. 编号清晰:用 1. 2. 3. … 来组织步骤。
    4. 语言简洁:使用“点击XX按钮”、“进入XX页面”等短语。
    5. 结果明确:在最后一步或关键步骤后,用括号注明预期结果或实际发生的错误,例如 (预期:进入收藏页)(实际:App闪退)
    6. 提供必要的前置条件:如果复现需要特定的账号(如会员账号)或特定的数据状态(如书架上有超过10本书),请在步
      骤开始前说明。
  • 示例对比
    • 不推荐的写法 ❌
      登录后随便点点,然后去我的页面,点收藏就闪退了。 (信息不全,无法复现)
    • 推荐的写法 ✅
      1. 启动 App,进入首页。
      2. 点击底部导航栏的“我的”按钮。
      3. 在列表中,点击“我的书单”选项。
      4. (此时 App 发生闪退)

7.【实际结果】

  • 目标:用文字客观描述问题发生时的现象。
  • 示例点击“我的书单”后,App 立即黑屏并退出到手机桌面。

8.【期望结果】

  • 目标:描述在正常情况下,执行完上述步骤后应该发生什么。
  • 示例点击“我的书单”后,应成功进入“我的书单”页面,并显示已收藏的书单列表。

9.【附件】

  • 目标:提供最直观的证据。一张图胜过千言万语!
  • :请尽可能提供,这能极速提升问题解决效率
    • 问题截图:对于UI显示错误、错别字等问题。
    • 录屏视频:对于闪退、卡顿、复杂的功能流程问题,录屏是最佳选择。
    • 日志文件 (Logs):如果可能,附上从 Logcat 抓取的崩溃日志,这将极大地帮助开发人员定位问题。

文档的提交与评审流程

为了确保我们提交的每一份文档都是清晰有效的,我们采用一个简单的“交叉评审”流程。

第1步:自我检查

在把文档交给同事之前,请先自己扮演一个“毫不知情的开发人员”,然后从头到尾默读一遍你写的Bug 报告。

然后问自己一个问题:

“如果我只看这份文档,不进行任何口头提问,我能毫不费力地理解并复现这个问题吗?”

如果答案是肯定的,再进入下一步。如果是否定的,请重新修改和完善你的“重现路径”或“操作步骤”。

第2步:同事交叉评审 (Peer Review)

这是最重要的质量保证环节

  • 操作:请将你完成的文档(或其链接),发送给另一位测试同学
  • 审查者任务:审查的同学需要严格按照文档中的“重现路径”或“操作步骤”执行,完全不要依赖任何额外的口头沟通。你的目标是验证“仅凭文档是否能独立工作”。
  • 完成标准:一旦审查的同事确认可以仅凭文档复现问题或理解用例,这份文档就达到了提交标准,可以直接提供给开发同学进行后续处理。

附录:如何判断“严重程度”?

  • 致命 (Fatal):导致 App 无法使用。例如:启动就闪退、主流程完全卡死、用户数据丢失且无法恢复。
  • 严重 (Severe):核心功能无法使用,且没有替代方案。例如:无法登录、无法阅读书籍、无法支付。
  • 一般 (Normal):次要功能无法使用,或核心功能有缺陷但有其他方法可以绕过。例如:修改头像失败、搜索结果排序不正确。
  • 轻微 (Minor):不影响功能使用的界面问题。例如:按钮错位、颜色错误、文案有错别字。
  • 建议 (Suggestion):这不是一个 Bug,而是对产品提出的优化或改进建议。例如:“建议将“设置”按钮放到更显眼的位置”。

作者:verus  创建时间:2025-10-09 16:33
最后编辑:verus  更新时间:2025-10-09 18:47