测试游戏中简单案例的最佳方法


9

在设计和测试新游戏时,很多时候,尝试功能的人们已经习惯了,而不再尝试“愚蠢的方式”。因此,如果开发中断了某些事情,则可能只有新用户才会尝试使用此功能。有哪些最好的方法可以确保您的游戏在最终发布或进行重大更新后经过“愚蠢的案例”测试?方法论,软件帮助,甚至是人们将为您进行测试的站点等。

Answers:


9

我要说的几件事很重要:

鼓励程序员进行单元测试

这将确保某些愚蠢的bug(如果有针对它们的单元测试)不会再次发生,因为如果它们进行了单元测试,则它们将失败。这需要更改编程方法,但是我认为这是完全值得的。

自动化所有测试

除了单元测试之外,还创建一套自动化功能和验收测试,这些测试在每个构建上运行,以确保某些构建良好。如果您具有可编写脚本的控件,并且您的游戏通常是一致的,则可以自动测试许多错误。

创建多级测试计划

确保测试人员具有测试最重要的错误的测试计划。这应该是多层次的:

  • 冒烟测试:测试在大多数情况下游戏不会崩溃。
  • 常规测试:测试更多不常见的案例。
  • 浸泡测试:尽可能深入地运行,以消除尽可能多的常见错误。还要测试游戏可以在很长一段时间(几天)内保持正常运行而不会崩溃。

创建此测试计划,并在每次构建时都遵循它。


11

可以使用简单的标志来完成某种测试案例的代码覆盖方法,一旦在游戏中执行了代码块,该标志就会被触发。在屏幕上显示哪些标记已被触发和未触发,可以使测试人员知道哪些案件已被覆盖,哪些案件未被覆盖。

它很简单,只要标记具有有意义的名称,它就仍然有效,以便测试人员可以弄清楚应该做什么。

该技术归功于在《孤岛危机》中实施该技术的马修·杰克(Matthew Jack)。


3
有趣的概念+1
falstro

这实际上可以自动化。“使用运行游戏-debugFlags,grep输出,并确保我们击中x了标志数。” +1
ashes999

3

在编程方面,这里有几个很好的答案。我将添加更多面向设计的内容。

让您的系统设计师为测试人员编写边缘案例测试计划

如果他们知道自己在做什么,那么设计系统或编写游戏序列脚本的幕后工作人员很可能会知道该系统的极端情况以及可能在哪里崩溃。他们还应该对系统与其他人交互的地方有所了解。让他们制定测试计划,或与测试人员讨论可能会出错的地方,可以节省每个人的时间。


1

您应该研究所谓的“猴子测试”。它可以捕获许多此类错误:

https://secure.wikimedia.org/wikipedia/zh/wiki/Monkey_test

您还需要使用“ Kleenex测试人员”来组织用户体验测试,这些测试人员是首次看到您的游戏并且永远不会使用的测试人员。组织起来有点昂贵和复杂,但是值得付出努力。如果这样做,请使用3台相机拍摄每项测试的影片:一台在屏幕上,一台在控件上,一台在测试人员的脸上,以检测沮丧感。


1

很好的问题,此线程中的每个响应都是出色的响应。要添加的一件事:

根据我的经验(软件开发30年):如果测试组中至少有一名成员是熟练的大猩猩测试员,精通临时测试,滥用应用程序并故意以错误的方式使用游戏,则应用程序和游戏将更可靠原始海报描述的错误类型。大猩猩测试员的技能并不罕见-当您找到优秀的测试员时,请将其留在团队中。

有关有效的大猩猩测试的示例,请访问:www.youtube.com/watch?v=8C-e96m4730;)

总结此线程中的响应:有效的软件质量策略是多方面的,结合了多种方法,可以使您对游戏的功能质量和可靠性具有高度的信心。


0

我从朋友那里听说了一个有趣的技巧来测试图形。在已知的良好运行期间,定期记录来自GPU的性能统计信息(例如屏幕上的多边形)。然后,您可以重播该路线,如果数字变化超出给定的公差,则可能表示某些内容无法正确显示。


0

一种简单易用的方法,对您有很大帮助,尤其是在压力测试和网络测试中。使您的AI可以与其他AI对抗。如果您可以让自己的游戏自己玩一个周末,或者通过网络通过一小组AI玩一个周末,那么您可以学到很多东西。

当然,请记录所有内容。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.