`
deyum
  • 浏览: 35883 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

游戏测试常见Bug

阅读更多

本文翻译自《Game Development Essentials -- QA and Testing》。

 

作为一个测试员,主要的目标是:

  1.     找到Bugs
  2.     复现Bugs
  3.     提交Bugs报告


次要的目标是:

  1.     验证Bugs已经被修复
  2.     确实这个游戏好玩


Bug严重程度
    1. Low        低        修复不修复都没有多大不同。不影响运行流程。
    2. Medium    中等    应该修复
    3. High        高
    4. Critical    致命

Bug的分类
视觉,声音,级别设计,人工智能AI,物理,稳定性,性能,网络,兼容性。

 

下面讲一下各个分类里常见的Bug:
视觉
Clipping 比如一个人拿着枪靠着一个关闭的门,他的枪穿过了门;或者一个角色坐在吉普车里,他的脚穿过车子伸出到外面。
Z-fighting,
当两个面共面时,有时会出现十分难看的画面(指的是当两个或多个共面表面重叠时出现闪动)。
Screen-tearing,
拖屏,发生在GPU不能在足够快的时间里把一个帧画出来
Missing texture,
纹理(贴图)缺失,只显示了占位图块
Visible artifacts
可见的人工痕迹

声音:
Audio drops,
声音缺失,比如“我爱你”听到的变成“我__你”
Skipping,
暂时的停顿,常常是性能相关的问题。
Distortion,
扭曲
Missing sound fx,
音效丢失,不像贴图丢失那样有一个占位图块,而是什么都没听到
Volume too low/ too high (bad mix)
音量太低或者太高

(表)面设计:
Stuck spot,
角色卡在某处不能移动。原因是糟糕的几何运算。是严重级别的Bug。
sticky spot,
粘滞点,像Stuck Spot,但是要花些时间和努力才能走出来。通常是中等程度的Bug。Stick Spot与Stuck Spot可能相互转化。
Map hole,
地图漏洞,一旦你掉进去,整个画面都没有了。有时玩家可以在漏洞里向其它玩家攻击。找到所有地图漏洞的唯一方法就是走遍地图的每个角落(是啊,有时做软件测试更多的就是磨炼,是动作的重复,而不是技巧)。
Invisible wall,
看不见的墙,是多余的计算得到的,但没有经过美术加工。经常是来自以前版本的地图。也可能是有意设计出来的,用以指示某种边界(这是为了让玩家觉得这个面比它看起来还要大——过时的技术)。一定要仔细地调查,不然可能会被开发人员在Bug报告里将其设置为NAB(Not a Bug)。
Missing geometry(opposite of invisible wall; you can see it, but you can't walk through it)
和看不见的墙相反,贴图已经在那里了,但是真正的几何运算并没有完成。

人工智能AI
找AI方面的Bug比表面设计涉及的工作更细致。常见的例子表现在寻路和非玩家角色行为。
寻路:AI无法找到自己可以走的路,可能有三个原因:
1)一面看不见的墙堵在角色的路上
2)一个地图漏洞使得脚本出现缝隙
3)AI的逻辑设计很糟糕
非玩家角色行为:
AI的设计成功之处在于使人类玩家觉得真的是人在玩。
而非玩家行为,比如角色在电梯里面向错误的门。NPC的行为同样会影响游戏的平衡性。过于弱智的NPC队友让游戏难度提高,过于强悍的NPC队友又会让游戏变得过于容易。
Stuck(unable to move correctly through path),
Don't move,
Die too often,
Fall to follow,
Can't open doors

物理
找物理方面的Bug现在已经成了测试员的家常便饭了。
主要有两类:Breakable可打断行为和动态行为
现代游戏的一个常见功能是“可破碎”几何面,即可摧毁的几何面。比如一个瓷瓶能被子弹打碎。
但是想像一下,子弹的碎片最终漂浮到了空中或者瓶子根本没有破!那就是Bug!
Object floats when it's not supposed to,
Object doesn't break,
Object doesn't stop moving after being touched,
Unrealistic gravity,
Impossible to pile objects on top of one another

稳定性
Freeze,
屏幕冻结,马上复制或写下任何可用的Debug信息。
Crash(black screen),
崩溃(黑屏),跟屏幕冻结类似,只不过这类Bug连画面都没有。致命Bug。
Crash to desktop(PC),
只发生在PC机上的Bug。跟其它游戏崩溃有两点不同:
1)当游戏崩溃后,它返回到了桌面。
2)在游戏里,玩家任何输入都失效,但是操作系统桌面的一切操作都正常。
致命Bug。
Can't load level,
加载不了表面
unresponsive
捕获稳定性Bug需要测试人员更多的尝试,捕获性能Bug也是这样,我们会在后面讨论它。

性能
Low frame rate,
低帧率
Levels take too much time to load,
太长的贴图面加载时间
Minimum spec machine can't run the game(PC),
玩家不能在游戏所需要的最低配置上运行游戏
Game takes too long to install,
过长的游戏安装时间
Game pauses frequently to load data
游戏在加载时常常停顿
性能Bug从某方面来说,是最容易找到却又最难修复的。而且如果是很严重的问题,还不可能被修复。

网络
网络Bug尤其与服务器-客户端连接性和带宽相关。
Can't connect/dropped connection,
Can't join invite,
Lag,
令人懊恼的情况:你开了一枪,却是过了半秒后看到枪口冒烟。
迟滞,常在网络掉包或带宽过度使用时出现。
Invisible players,
看不到别的玩家,也看不到NPC(non-player character)
Scoring errors
Don’t ignore potential bugs just because they might be low priority.别忽略那些低优先级的潜在Bug。

兼容性:
兼容性Bug涉及的是一个游戏能否运行在不同的硬件上的问题。
Game crashes on ATI videocards,
游戏可能在非主流显卡上崩溃
Logitech controller doesn't work,
不能使用罗技手柄操作游戏
手柄兼容性Bug的检查非常重要,因为很难保证每一个厂家的产品都能在你所测试的游戏下使用。
Game doesn't run on Windows ME,
游戏在Windows ME上不能运行
这是很常见的Bug。
Bluetooth headset only outputs mono,
蓝牙耳机只听到单声道
Game is not compatible with Windows Vista 64 bit各个分类常见的Bug

分享到:
评论

相关推荐

    游戏测试 教程 笔试

    准备过程中,可以研究历年面试题,如“2009年金山游戏测试面试考题”,掌握常见问题和答题技巧。 通过学习这些资料,不仅可以深入理解游戏测试的核心概念和流程,还能针对性地准备各大公司的面试,提升自己在游戏...

    带bug的2048

    在实际编程中,可以采用单元测试的方式,针对每个可能的边界情况编写测试用例,确保修复的bug不会引入新的问题。 总之,“带bug的2048”为我们提供了一个学习Java编程和调试技巧的好机会。通过分析和修复这些问题,...

    游戏测试文档

    ### 游戏测试基本概念与技巧 #### 一、QA与测试的概念 - **QA (Quality Assurance)**: QA,即质量保证,根据ISO8402:1994的标准定义,是为了确保实体能满足品质要求而采取的一系列有计划、有系统的活动。在企业...

    bugBrain(神经网络游戏)

    《游戏攻略-Lab实验室.docx》和《游戏攻略-Lab2实验室.docx》可能涉及游戏中的特定区域或实验模式,这些模式可能设计用于测试玩家的策略制定和问题解决能力,同时也让AI系统得以学习和优化。 《游戏攻略-Worm.docx...

    游戏开发常见面试题合集.pdf

    - **定义**:包括游戏测试、市场推广、上线发布等多个环节。 - **经验**:分享与发行商合作的经验,处理发行过程中可能遇到的问题。 #### 30. 跟踪和调试 - **工具**:使用调试器、性能分析工具等。 - **方法**:...

    2020年C++通讯录管理系统【测试无bug】

    在测试阶段,确保系统的无bug状态至关重要。这通常涉及单元测试、集成测试和系统测试。单元测试针对单个函数或类进行,确保其功能正确;集成测试验证不同组件之间的协作;系统测试则检查整个系统是否满足预期需求。...

    捉虫历险记——常见C++Bug大围剿.rar

    "捉虫历险记——常见C++Bug大围剿"这个压缩包文件,显然是为了帮助开发者们更好地理解和处理C++编程中常见的错误。 C++的Bug通常可以分为几大类:语法错误、逻辑错误和运行时错误。语法错误是最直观的,编译器会在...

    animate 数学小游戏(有bug.zip

    7. **测试与发布**:完成游戏开发后,需要在不同环境下进行测试,确保在各种设备和浏览器上都能正常运行。发布时,可能需要将项目导出为SWF(Flash格式)或HTML5 Canvas,以便在网页上播放。 综上所述,这个Animate...

    解决Java实现飞行棋Bug

    本篇文章将详细讨论如何解决在Java实现飞行棋时遇到的常见Bug,确保游戏能够顺利运行。 首先,我们需要了解飞行棋的基本规则。飞行棋通常有四个颜色的棋子,玩家轮流掷骰子决定棋子的移动步数。棋子可以跳跃,当一...

    测试新人培训主要针对RPG游戏呦

    游戏测试新人培训主要聚焦于RPG游戏,旨在帮助新进测试人员熟悉测试工作流程和方法。测试人员在软件测试中的核心任务是验证软件的功能、性能和稳定性,理解软件的开发环境,以及确定直接用户的需求。这需要他们具备...

    俄罗斯方块bug版.zip

    总的来说,通过研究这个“俄罗斯方块bug版.zip”项目,我们可以深入理解Java Swing在构建图形用户界面中的应用,以及如何解决在游戏编程中常见的问题。修复bug的过程可以强化我们对编程原则、错误处理和软件调试的...

    j2me BUG

    本文将深入探讨J2ME中的常见BUG及其解决方案。 【描述】:这篇博客文章可能详细分析了一个具体的J2ME程序中出现的BUG,可能是关于内存泄漏、线程同步问题或者是与特定设备不兼容的情况。作者通过分享自己的经验,...

    连连看源码无bug版

    这对于初学者来说是一份非常宝贵的参考,因为可以避免踩到常见陷阱,更专注于理解游戏开发的核心概念。 在阅读和学习这个"连连看源码无bug版"时,可以重点关注以下几个方面: 1. 游戏初始化:了解如何创建游戏板,...

    猫扑DSQ上次的有bug,这次应该没有了

    1. 软件bug的修复:软件开发过程中,发现并修复错误是常见步骤,这通常涉及代码审查、调试和测试。 2. 用户反馈的重要性:开发者对bug的回应展示了对用户反馈的重视,这是提高产品质量和服务的关键。 3. 软件迭代:...

    java网络游戏服务器端测试

    这可能涉及到复杂的业务规则和状态机设计,确保游戏公平且无bug。 5. **数据库交互**:保存和查询玩家数据、游戏进度等通常需要与数据库交互。高效的数据库设计和SQL优化对服务器性能有很大影响。 6. **安全性**:...

    OGRE开发的一个程序zombieisland_bug_camera

    "ZombieIsland_bug_camera"是一个基于OGRE开发的程序,专门用于展示和测试3D游戏中的相机系统,特别是针对“bug”或异常情况的调试。在这个项目中,我们将深入探讨如何利用OGRE引擎构建这样的3D环境,并理解相机系统...

    072源码大量修复_072已大量修复BUG_072源码_

    其次,关于组队任务、技能任务和转职任务,这些都是游戏中常见的功能模块。在游戏开发中,这些模块涉及到玩家之间的交互、角色的成长路径以及游戏玩法的多样性。组队任务通常涉及多个玩家协同完成目标,需要处理复杂...

Global site tag (gtag.js) - Google Analytics