25.06.2018

我们在想一个好的 bug 报告模板

一份好的游戏错误报告应该包含哪些必备内容?本文面向开发者和测试人员。

作者 原文: 来自波兰的开发者莱瑟克·戈尔尼亚克(Leszek Górniak)。他是Teyon的游戏设计师,Bob Games的Unity开发者,以及Gamasutra的专栏作家。

莱瑟克·戈尔尼亚克

“某些武器对洞穴巨魔没有造成伤害。” “指示器显示的弹药数量不正确。” “在第三关的纹理出现了问题。”

以上每个句子看似都像是错误报告,但没有一个提供足够的信息来帮助开发者解决问题。虽然这些例子有些夸张,但我确实见过不少模糊、不完整或难以理解的投诉。无论我在IT行业担任测试员,在成为游戏设计师的过程中也遇到过这些问题。

在这篇文章中,我想展示一份好的错误报告模板应是什么样子,以便提供完整、清晰和有效的反馈。我的模板包含十个要点:

  • 标题;
  • 类别;
  • 重要性/优先级;
  • 重现问题的步骤;
  • 实际发生的情况;
  • 预期发生的情况;
  • 程序版本;
  • 问题是否可重现;
  • 平台;
  • 附加文件。

在继续之前,我想澄清几点。首先,错误报告中只应包含能帮助解决问题的信息,避免包含无关细节。我的模板中只包含这些要点,尽管在特定游戏中可以省掉某些不相关的部分。

其次,我极力推荐使用某种错误追踪系统。对于小型项目,Google Docs就足够了。但是如果你有一个较大的项目,选择一个合适的工具,以便将错误进行分类、设置过滤和优先级。我个人推荐Mantis用于小型项目(10-30人)和JIRA用于大型项目。首先你需要解决错误报告的整理问题。

JIRA界面

现在让我们逐一看看模板的具体要点。

标题

请用户写一个简短的标题,清楚地描述问题。“在第三关的纹理出现了问题” — 虽然简短,但不够描述性。而“第三关的摩天大楼上的材料纹理出现了问题” — 那就好得多。仅从标题中就能清楚地得知修复问题所需的信息(当然,前提是问题并非发生在所有摩天大楼上,那就需要进一步说明)。

类别

每个问题都可以归类到一个具体的类别中,例如:界面、音频、对话、AI等。将这些类别包含在模板中,将有助于过滤报告和分配解决问题的任务给不同的员工。

重要性/优先级

重要性指的是错误的严重程度。如果界面中一个按钮覆盖了另一个按钮 — 这是轻微问题;而执行主要任务时崩溃 — 那就是通关障碍

优先级通常与问题的重要性直接相关。尽管有些错误追踪系统为重要性(轻微问题、严重问题、致命问题、通关障碍)和优先级(低、中、高、紧急)提供了不同的过滤选项。

重现问题的步骤

这是报告中最重要的部分!没有详细的重现步骤,程序员要么找不到问题,要么会花费过多的时间和精力去重现它。描述应该既详细又简单。下面我将给出一些例子。

实际发生的情况

这应该是对“在完成前述所有步骤后会发生什么”的回答。请记住,有时一张截图或日志的效果胜过千言万语(这就是附加文件项的重要性)。

预期发生的情况

这是可选项。虽然在某些情况下,没有它报告会显得不完整。需要明确如果没有错误,究竟应该发生什么。

程序版本

错误可能出现在特定的程序版本中,因此需要在报告中包含版本号。

问题是否可重现

每次按照重现步骤操作时,错误是否每次都会发生,还是偶尔出现。理想情况下,错误应始终可重现,但有时重现它可能非常困难——例如,问题可能与低性能硬件相关。

平台

这也是可选项,但在某些情况下非常重要。例如,如果:

  • 游戏是为多个平台开发的,而错误只发生在其中一个平台;
  • 错误与性能低下有关,因此我们需要知道特定设备的规格;
  • 游戏是为不同的浏览器开发的,而错误再次只在一个浏览器中发生。

附加文件

可能包括:

  • 截图(在报告涉及环境或用户界面时非常有用);
  • 视频(例如,可以用来展示AI的异常行为);
  • 日志(例如,在崩溃时需要)。

但是,我已经玩了一个半小时了!..

好了,关于要点我们已经澄清了。现在我来给你们展示如何在之前提到的例子中应用这份模板。

例子1. 某些武器对洞穴巨魔没有造成伤害

标题: 斧头对洞穴巨魔没有造成伤害。

类别: 游戏玩法。

重要性/优先级: 致命/高。

重现问题的步骤:

  1. 进入第二幕。
  2. 进入矮人王国。
  3. 与戈特雷克交谈以激活“洞穴巨魔”任务。
  4. 前往巨魔的巢穴。
  5. 装备任意“斧头”类型的武器。
  6. 攻击巨魔并尝试造成伤害。

实际发生的情况: 洞穴巨魔没有受到伤害。

预期发生的情况: <显而易见,可以省略>

程序版本: 0.3.1。

问题是否可重现: 是的,始终。

平台: 任何。

附加文件: 无。

例子2. 指示器显示的弹药数量不正确

标题: 在重装后,指示器显示的弹药数量过多。

类别: 界面(UI/HUD)。

重要性/优先级: 严重/高。

重现问题的步骤:

  1. 拿起一把30发子弹的火器。
  2. 射击五次。
  3. 进行重新装填。

实际发生的情况: 指示器显示55发子弹(重装前25发+弹匣容量)。

预期发生的情况: 指示器应显示30发子弹(重装前25发+重装后5发)。

程序版本: 0.3.1

问题是否可重现: 是的,始终。

平台: 任何。

附加文件: 显示指示器上不正确弹药数量的截图。

例子3. 第三关的纹理出现了问题

标题: 第三关摩天大楼上的材料纹理出现了问题。

类别: 环境。

重要性/优先级: 轻微/正常。

重现问题的步骤: <显而易见,可以省略>

实际发生的情况: 请参见截图。

预期发生的情况: <显而易见,可以省略>

程序版本: 0.5b。

问题是否可重现: 始终。

平台: PS4。

附加文件: 有摩天大楼的截图。

有序和稳定地解决错误对游戏质量有显著影响。使用清晰和统一的错误报告模板将改善您团队的工作和互动,最终帮助您制作出更高质量的游戏。

相关主题:

来源: Gamasutra

评论
写评论...
Related news