游戏测试:类型以及如何测试移动/桌面应用程序
什么是游戏测试?
游戏测试是用于对视频游戏进行质量控制的软件测试过程。游戏测试的主要目标是识别和发现视频游戏中的缺陷和错误,并提高稳定性和性能。游戏测试是游戏开发的一个组成部分,有助于确保部署的视频游戏没有错误。
游戏开发生命周期
预生产:在此阶段进行游戏创意、故事板、功能、需求分析和文档编制。此阶段包括技术设计文档和功能规范、游戏架构、帧叠加、动画。考虑以下项目:
- 音乐、相机(放大和缩小、回放、电影视角)、玩家和动作属性
- 游戏流程逻辑、规则以及达到下一关卡的条件
- 物体和事件触发器、分数、玩家移动和定位、玩家统计数据
- 非互动序列、特效、标题画面、多按钮操作
- 游戏手柄、电影片段、震动/振动效果、法律文本、按钮功能的使用、模拟和数字模式的使用。

生产:在此阶段进行实际编码。此阶段包括编码和各种模块的集成。
测试和部署:在此阶段进行功能测试、回归测试、Alpha、Beta、Gold测试。还使用移动游戏测试工具进行覆盖率和流程测试、数据完整性测试、算法特定测试、路径测试、增量测试。
游戏测试与其他软件测试有何不同。
游戏测试是一个重复过程,每个新版本都可能存在错误,必须彻底测试。
所有游戏测试都遵循一个基本结构,无论游戏的规模和制作所需的时间如何。
质量保证专业人员需要研究游戏规则和要求。理解整体游戏组件架构和文件架构、流程以及与游戏相关的文件结构和依赖关系。对于游戏的每个新原型,测试文档需要频繁修订,以更新规范中的任何更改、新的游戏测试用例和新的配置支持。视频游戏测试员应确保没有引入新问题。
游戏测试员的工作包括
- 根据预期目的和目标受众对需求进行分类。
- 识别用户和系统需求,并将其分类为功能、非功能、领域需求
- 识别可测试项、不可测试项、功能和非功能需求的目标和衡量标准
- 检查功能需求是否完整、一致且易于理解
- 识别可定制需求、冲突需求
- 识别相互依赖的需求是游戏测试工作之一。
- 根据独特性、复杂性、关键性对需求进行优先级排序
- 识别游戏主题、角色、动画、人工智能、电影、摄像机视图、游戏玩法
如果您想成为一名视频游戏测试员,这里有一个免费教程值得您查看: 如何成为一名视频游戏测试员
游戏测试的类型
以下是流行的游戏测试技术
1) 功能测试
功能质量保证测试人员寻找游戏或其用户界面和图形中的通用问题,例如游戏机制问题、稳定性问题和游戏资产完整性。用户界面测试确保游戏的易用性
示例:检查颜色和背景、菜单结构、屏幕方向和屏幕分辨率、字体大小、对齐错误、可用性、系统导航(如加载时间、超时和显示、排序、确认消息、序列、动画和音频元素)、指令和对话消息。用户交互、用户界面、事务测试、手机摄像头校准和准确性测试、屏幕分辨率、移动响应式设计测试、音频质量测试
2) 兼容性测试
检查游戏是否兼容不同设备以及不同硬件和软件配置。
示例:在所有支持的游戏机/台式机/移动设备上安装和卸载游戏。
3) 性能测试
检查游戏的整体性能。执行性能调优以优化游戏速度。
性能测试期间检查的重要性参数
- 客户端和服务器上的响应时间、事务完成时间、峰值负载性能、持久性、网络覆盖、内存泄漏、低内存、低电量、下载应用程序所需的时间、同时(多用户)访问应用程序服务器、速度、吞吐量、可靠性、可扩展性等。
- 电池消耗和图形性能:测量移动游戏的电池消耗。长时间运行电池消耗必须最佳,并且游戏响应在不同设备上承受不同重载时应令人满意
- 处理器和内存限制:性能计数器用于测量应用程序的 CPU 和内存消耗。
- 网络连接:测量移动游戏在不同网络类型(Wi-Fi、2G、3G、4G)上的响应时间,这全面了解了游戏在不可靠网络上的表现。它还检查移动设备、数据中心或云之间的连接。监视所有峰值时间、抖动连接、数据重复、数据包丢失、数据碎片化。
- 大型多人在线游戏(MMO)的移动游戏性能测试
4) 符合性/合规性测试
市场指南合规性(例如,Apple App Store 政策)、企业政策合规性(例如,禁止内容)。合规性也可能指 PEGI 和 ESRB 等监管机构。游戏针对特定的内容评级。如果存在不适合所需评级的 objectionable 内容,则会对其进行识别和报告。即使在提交许可证审批时出现单个违规,也可能导致游戏被拒绝,从而产生额外的测试和重新提交成本。
示例:如果游戏将在欧洲国家发布,请测试 PAL 转换;如果游戏是为北美制作的,请测试 NTSC 转换。
5) 本地化测试
本地化测试对于面向全球市场的游戏变得至关重要。游戏标题、内容和文本需要翻译并使用多种语言的设备进行测试。这些类型的测试可以快速执行(借助基于云的设备访问和测试自动化)。
示例:中东/北非地区(MENA)特定的本地化需求,阿拉伯语本地化(从右到左文本支持,双向显示),伪本地化测试,双字节字符(适用于东亚语言),当地时间/日期、货币、地址格式和其他当地要求。
6) 浸泡测试
这种游戏自动化测试包括让游戏在各种操作模式下长时间运行。例如,空闲暂停或在标题屏幕。浸泡可以识别内存泄漏或舍入误差。
示例:游戏已开始,角色被设置为空闲24小时。此技术用于检测由内存泄漏和游戏引擎中的其他故障引起的崩溃。
7) 恢复测试
在软件中,恢复测试检查应用程序在崩溃、硬件故障和其他类似故障中恢复得如何。应用程序被强制失败,然后观察它如何从故障条件和环境中恢复。
示例:在游戏应用程序运行时,突然重启游戏机,并检查数据完整性。
8) 安全测试
它用于检查软件对抗外部威胁的安全性。数据保护免受外部威胁、不受控制的系统访问限制、数据泄露、操作系统缺陷、通信系统缺陷和弱加密算法。
示例:在游戏网站上将 URL 从 /login 更改为 /play 不应允许直接访问游戏。
9) 其他游戏测试
真实或虚拟角色的测试。在多人视频游戏中,与服务器的连接和游戏状态的同步是两个需要测试的关键领域。
示例:多人3D赛车游戏。
测试新功能,例如游戏状态更新、好友邀请、高级礼物分享等。这确保了用户丰富的游戏体验。
示例:Facebook、博客
声音测试
测试文件加载是否存在错误,听取声音文件是否存在错误或失真,使用 CC 分析器分析色彩评论
数据库和游戏统计
使用调试进行数据库验证,以调查游戏是否正确使用数据。确保数据加载到正确的位置并显示正确的信息
白盒测试
游戏白盒测试侧重于移动游戏的架构、集成和系统方面。
- 代码审查:审查源代码,分析程序逻辑、常见编程错误和编码标准合规性。
- 重点测试:将代码块输入到独立的模块中,并分析输出。
- 数据分析:分析和验证不同模块的数据使用、解释和操作。
- 路径和流程测试:执行正确的对象序列。
- 算法特定测试:通过设置数据变量、数据值到代码并在运行时环境中执行来测试特定的游戏场景或功能。
- 人工智能分析:生成人工智能组件可编程动作和玩法的运行统计数据。验证结果以检查是否使用了所有可编程动作。示例:滑雪板的侧握和玩法(多向动作中的组合拳/踢)是否使用。
使用辅助技术进行辅助游戏
辅助游戏也称为无障碍游戏。其功能采用自适应技术设计,旨在帮助视力低下、视力模糊、失明、色盲、言语、听力、认知、运动和行动障碍等各种残疾人士。
基本方向(CD)、伦敦塔(TOL)是两款流行的游戏,它们已被修改以适应视障用户。在这些游戏中,视觉刺激被音频输入取代。
视频游戏测试人员在测试此类游戏时应注意以下几点:
- 颜色应以某种模式闪烁,并且每个颜色都会播放音调。
- 每种颜色都应伴有可听见的音调。
- 视觉数据需要用文字描述,以便视障人士在使用屏幕阅读器时不会遇到接收问题。
- 玩家应该听到游戏中的三维声音,并且必须使用触摸屏 3D 音频和空间化声音来导航世界。
测试人员应了解的游戏指标。
DAU/MAU(每日活跃用户/每月活跃用户):每天玩游戏的活跃用户与每月活跃用户数的比率。通常也称为粘性系数。
会话:每次用户打开应用程序都算作一个会话。这里关注的是每个 DAU 的平均会话数。
下载排名:游戏在特定应用商店(iOS、Android Play)中按每月游戏下载量排名。
留存率:对于免费游戏来说,这是 Android 游戏测试人员非常重要的指标。要计算留存率,请根据应用程序下载日期将用户分为不同的群组。
性能指标:用于跟踪在线游戏或持续游戏的性能。游戏在客户端硬件平台上执行的帧率,或者在游戏服务器的情况下,其稳定性和性能指标可用于监控不断变化的功能和更新。
游戏测试中的主要风险
- 游戏未能为目标受众创造引人入胜的体验。
- 游戏没有以玩家为中心的设计
- 游戏缺乏趣味性和令人上瘾的游戏体验。
- 游戏不独特、缺乏竞争力、节奏缓慢。
- 游戏因技术问题、功能损坏、严重错误、糟糕的音乐音效和差劲的视频而失败。
- 游戏开发成本超出预算
- 游戏应该有简单的美学设计和玩法。
摘要
- 游戏开发生命周期包括预生产、生产、使用游戏测试工具进行测试和部署三个阶段
- 游戏测试是一个重复过程,每个新版本都可能存在错误,因此必须使用游戏测试自动化工具进行彻底测试
- 不同类型的测试包括 1) 功能测试、2) 兼容性测试、3) 性能测试、4) 符合性/合规性测试、5) 本地化测试、6) 浸泡测试、7) 恢复测试、8) 安全测试
- 游戏白盒测试侧重于移动游戏的架构、集成和系统方面,包括 1) 代码检查 2) 重点测试 3) 数据分析 4) 路径和流程测试 5) 算法特定测试 6) 人工智能分析
- 辅助游戏也称为无障碍游戏。其功能采用自适应技术设计,旨在帮助个人
- 一些重要的游戏指标是 DAU/MAU、会话、下载排名、留存率和性能指标
- 移动游戏测试的主要风险是它无法为目标受众创造引人入胜的体验