游戏测试性能测试学习

游戏测试学习
一、重要性能指标
FPS(Frames Per Second):
定义:每秒传输的帧数,用于反映游戏画面的流畅度。
意义:FPS 越高,游戏画面越平滑。通常 30FPS 为基本流畅,60FPS 能提供非常流畅的视觉体验。
PSS(Proportional Set Size):
定义:实际使用的物理内存加上按比例分配的共享库内存。
意义:能够反映游戏运行时实际占用的内存大小。PSS 过高可能导致设备内存不足,进而引发卡顿或闪退。
CPU(Central Processing Unit):
定义:中央处理器,主要负责处理游戏的逻辑运算、AI 计算等任务。
意义:CPU 使用率过高会致使游戏卡顿,若发热严重还可能影响设备性能和寿命。
GPU(Graphics Processing Unit):
定义:图形处理器,主要承担游戏画面的渲染和绘制工作。
意义:GPU 性能越强,游戏画面质量和流畅度越高。但 GPU 使用率过高可能出现画面掉帧、花屏等问题。
二、性能分层
网络层:涉及带宽、网段、防火墙、CDN 等方面。其作用是确保游戏数据能够快速传输,提高网络通信效率,同时保护系统安全。
网关层:作为请求入口和业务接入层,负责登录验签调用、加解密鉴权、限流等操作,以保障系统的稳定性和安全性。
应用层:包括游戏前端的渲染展示和后端的逻辑处理。它决定了游戏画面质量、流畅度和特效表现,同时还负责处理玩家操作请求和游戏规则计算等。
中间件:包含缓存、消息队列、定时任务、数据同步、配置中心等组件。能够提高数据读取速度,异步处理任务,执行周期性任务,从而保障系统高效运行。
存储层:指数据存储和文件存储层级,如 MySQL、HDFS 等数据库和文件系统,用于保存游戏数据和资源文件。
物理层:包括服务器硬件配置,如 CPU 型号、核心数量、内存容量、硬盘类型和速度等,决定了系统性能的上限。
三、性能测试方法
基准测试:针对单机单服务单接口,确定系统在空载或基本负载情况下的性能表现,为后续测试提供参考基准。
并发测试:设定阈值,观察系统在多用户并发访问时的性能表现,检验系统的并发处理能力。
容量测试:采用阶梯式加压方式,找到性能拐点和资源瓶颈,了解系统的最大负载量和不同负载下的性能表现。
异常测试:模拟各种异常情况,如容错处理、监控告警、容灾恢复演练等,检验系统的稳定性和可靠性。
稳定性测试:长时间运行系统,观察其是否能持续稳定提供服务,评估系统的可用性和稳定性。
四、性能测试流程
(一)准备阶段
确定测试目标,明确要测试的性能方面,如帧率、卡顿情况、加载时间、内存占用等。
选择测试设备,确保设备硬件配置和系统环境符合游戏要求。
关闭其他不必要的后台应用程序,释放系统资源。
调整游戏设置,如画质、分辨率、特效等,为不同测试场景做准备。
(二)测试阶段
遍历新地图测试
制定遍历路线,划分区域,确定关键地点,规划覆盖所有区域和关键地点的路线。
测试过程中记录帧率、加载时间、内存占用、卡顿和掉帧情况、温度和功耗等数据。
分析数据,找出性能瓶颈,提出优化建议。
特定场景测试,如大规模战斗场景、密集建筑区域等,重点测试这些复杂场景下的性能。
重复测试,取平均值确保结果准确性。
测试点:
一、遍历新地图测试点
不同地形区域:
平原地区:
奔跑与行走:记录角色在平原上以不同速度奔跑和行走时的帧率变化。观察是否有明显的帧率波动,尤其是在长距离持续奔跑过程中。例如,从一个地标点直线跑到另一个地标点,全程记录帧率数据。
战斗动作:在平原上进行战斗,记录角色施展普通攻击、技能释放、元素反应等动作时的性能表现。注意观察特效较多的技能对帧率和内存占用的影响。比如,使用角色的大招攻击一群怪物,查看此时的帧率和 GPU 使用率。
自然景观交互:与平原上的花草树木、野生动物等自然景观进行交互,如采集花朵、攻击动物等,测试这些交互动作对性能的影响。例如,连续采集多朵花时,观察帧率是否有下降。
山区:
攀爬与滑翔:详细记录角色攀爬陡峭山峰和滑翔过程中的帧率、加载时间和内存占用。注意不同高度和角度的攀爬、滑翔对性能的影响差异。比如,从一座高山的底部开始攀爬,记录整个过程中的性能数据;在山顶滑翔到远处,观察滑翔过程中的帧率变化。
山洞探索:进入山区的山洞,测试山洞内部复杂地形和昏暗光照环境下的性能。检查加载山洞内的岩石纹理、矿物资源等对帧率和内存的影响。例如,在一个大型山洞中探索,记录不同位置的性能表现。
高度变化:当角色在山区快速上升或下降高度时,观察帧率和温度的变化。比如,使用风之翼从高空快速下降,或者通过攀爬快速上升到山顶,记录这些过程中的性能数据。
水域:
游泳速度变化:测试角色以不同速度游泳时的性能。观察快速游泳和缓慢游泳时帧率、内存占用和温度的差异。例如,在一条宽阔的河流中,分别以最快速度和最慢速度游泳,记录性能数据。
水下探索:进入水下区域,测试水下环境的加载时间、帧率和内存占用。注意水下特效、鱼类等生物的出现对性能的影响。比如,在一个有较多水下景观的区域进行探索,记录水下的性能表现。
水面互动:与水面进行互动,如使用角色技能在水面产生波纹、乘坐船只等,测试这些互动对性能的影响。例如,使用角色的水元素技能攻击水面,观察此时的帧率和特效表现。
重要地点:
主城:
人流量高峰:在游戏中的特定时间,如活动期间或晚上,主城人流量较大时,测试性能表现。观察大量 NPC 和玩家角色同时出现对帧率、加载时间和内存占用的影响。例如,在璃月港的晚上,记录城市中心区域的性能数据。
建筑内部探索:进入主城中的各种建筑,如商店、客栈、庙宇等,测试建筑内部复杂场景的加载时间和帧率。检查建筑内部的装饰、家具等细节对性能的影响。比如,在璃月港的万民堂内部,观察角色在不同位置的帧率变化。
与 NPC 交互:频繁与主城的 NPC 进行对话、接取任务等交互操作,记录这些操作对性能的影响。注意观察交互过程中的动画效果和语音播放对帧率的影响。例如,连续与多个 NPC 对话,查看此时的性能表现。
副本入口:
多人组队准备:在副本入口处,与其他玩家组队准备进入副本时,测试多人同时存在的性能表现。观察组队界面的加载时间、帧率和内存占用。比如,在一个热门副本入口,与三名其他玩家组队,记录组队过程中的性能数据。
副本难度选择:选择不同难度的副本时,测试界面切换和难度信息加载对性能的影响。注意高难度副本的提示信息和特效对帧率的影响。例如,在选择高难度副本时,观察界面的加载速度和帧率变化。
传送点:
快速传送切换:连续使用多个传送点进行快速切换,测试传送过程中的加载时间和帧率波动。观察连续传送对内存占用的影响。比如,在地图上选择几个距离较远的传送点,快速依次传送,记录性能数据。
传送后环境加载:传送后,观察周围环境的加载速度和完整性。检查地形、建筑、NPC 等元素的加载是否出现延迟或错误。例如,传送至一个新的区域后,立即移动角色,观察周围环境的加载情况。
特殊场景:
昼夜交替:
光照变化瞬间:记录昼夜交替时,光照从白天切换到夜晚或从夜晚切换到白天的瞬间性能表现。观察光照变化对帧率、内存占用和 GPU 使用率的影响。比如,在一个有明显光照变化的地点,等待昼夜交替,记录切换瞬间的性能数据。
不同时间段活动:在白天和夜晚的不同时间段,进行各种活动,如战斗、探索、与 NPC 交互等,测试性能差异。例如,在白天和夜晚分别进行一场战斗,比较帧率和特效表现。
夜景特效:夜晚场景下,观察灯光、月亮、星星等夜景特效对性能的影响。检查角色在夜晚环境中的阴影效果和光照反射对帧率的影响。比如,在璃月港的夜晚,观察港口的灯光和水面反射效果,记录性能表现。
天气变化:
天气切换瞬间:记录天气从一种状态切换到另一种状态的瞬间性能表现。观察天气变化对帧率、内存占用和温度的影响。比如,从晴天突然变为雨天时,记录切换瞬间的性能数据。
不同天气下的活动:在各种天气条件下进行游戏活动,如雨天战斗、雪天探索等,测试性能差异。注意雨水、雪花特效以及不同天气对角色行动的影响。例如,在雨天进行一场战斗,观察雨水特效和角色技能特效的叠加对帧率的影响。
恶劣天气挑战:在狂风、暴雨、暴雪等恶劣天气下,测试角色行动的困难程度和性能表现。观察恶劣天气对视野、移动速度和帧率的影响。比如,在龙脊雪山的暴雪天气中,记录角色行走和战斗的性能数据。
二、特定场景测试点
大规模战斗场景:
深渊挑战:
怪物波次变化:记录深渊不同波次怪物出现时的帧率变化。观察随着怪物数量和强度的增加,性能的变化情况。比如,在深渊第 12 层,每一波怪物出现时记录帧率和内存占用。
元素反应连锁:测试角色之间的元素反应连锁在大规模战斗中的性能表现。注意观察多种元素反应同时触发时的特效和帧率变化。例如,使用多个角色进行元素反应连锁攻击,查看此时的帧率和 GPU 使用率。
深渊环境特效:深渊中的特殊环境特效,如地火、雷电等,对性能的影响。检查这些特效与怪物攻击特效的叠加对帧率的影响。比如,在有地火特效的深渊区域进行战斗,记录性能表现。
世界 boss 战:
多人组队战斗:在多人组队挑战世界 boss 时,测试网络延迟、帧率和内存占用。观察多个玩家同时释放技能和 boss 的大型攻击特效对性能的影响。例如,与四名其他玩家组队挑战风魔龙,记录战斗过程中的性能数据。
boss 不同阶段:世界 boss 在不同阶段有不同的攻击方式和特效,测试这些阶段变化对性能的影响。注意 boss 进入狂暴状态或特殊技能阶段时的帧率波动。比如,在挑战若陀龙王时,记录 boss 不同阶段的性能表现。
战斗场景破坏:一些世界 boss 战斗可能会破坏场景,测试场景破坏特效对性能的影响。观察场景中的岩石、树木等被破坏时的帧率变化和内存占用。例如,在挑战古岩龙蜥时,记录场景破坏过程中的性能数据。
密集建筑区域:
璃月港建筑密集区:
视角切换:在璃月港的建筑密集区,频繁切换视角,测试不同视角下的帧率和加载时间。观察建筑的远近视角切换对性能的影响。比如,在璃月港的码头区域,快速切换视角观察周围的建筑和船只,记录性能表现。
建筑内部与外部交互:从建筑内部走到外部或从外部进入建筑内部,测试这个过程中的性能。检查建筑内外光照变化和模型加载对帧率的影响。例如,在璃月港的一家商店内,走出商店进入街道,记录这个过程中的性能数据。
细节装饰观察:仔细观察建筑密集区的各种细节装饰,如招牌、灯笼、旗帜等,测试这些装饰对性能的影响。注意观察风吹动旗帜等动态效果对帧率的影响。比如,在璃月港的繁华街道上,专注观察各种装饰细节,记录性能表现。
稻妻城商业街:
店铺特效:测试商业街店铺的招牌灯光、商品展示等特效对性能的影响。观察不同店铺特效的叠加对帧率的影响。例如,在商业街的一家武器店门口,观察武器展示特效和灯光效果,记录性能表现。
行人流量:在商业街人流量较大时,测试角色与行人的交互以及行人的移动对性能的影响。注意观察大量行人同时出现对帧率和内存占用的影响。比如,在商业街的热闹时段,记录角色在人群中的性能表现。
建筑风格影响:稻妻城的建筑风格独特,测试这些建筑风格对性能的影响。观察建筑的屋顶、屋檐、门窗等特色部分的加载和渲染对帧率的影响。例如,在一个具有典型稻妻建筑风格的区域,记录角色在不同位置的性能表现。

(三)分析总结阶段
整理记录的数据,制作图表或表格,分析性能变化趋势。
分析异常情况,找出性能瓶颈所在区域或场景。
根据分析结果提出优化建议,如降低画质、关闭后台程序、更新驱动程序等。
总结测试过程和结果,撰写测试报告,向游戏开发者反馈测试情况。
五、性能问题判断与解决
(一)CPU 占用率异常降低判断
游戏本身问题
游戏优化过度:有时游戏开发者可能进行了过度优化,导致在某些情况下 CPU 资源未被充分利用。例如,某些场景的计算任务被不合理地简化或省略,使得 CPU 无需进行大量运算,从而占用率降低。
游戏出现故障:游戏可能存在某些错误或故障,导致部分功能无法正常运行,进而减少了对 CPU 的需求。比如,某个关键的游戏逻辑模块出现异常,使得一些复杂的计算没有被触发。
系统设置问题
电源管理模式:如果设备的电源管理模式设置为节能模式,系统可能会限制 CPU 的性能以降低功耗。这可能导致在运行游戏时,CPU 占用率异常降低,从而影响游戏的性能表现。
后台进程干扰:某些后台进程可能会干扰游戏对 CPU 的使用。例如,一些系统更新程序或杀毒软件在后台运行时,可能会调整系统资源分配,导致游戏的 CPU 占用率降低。
硬件问题
CPU 过热降频:如果设备的散热系统出现问题,导致 CPU 温度过高,可能会触发 CPU 的自动保护机制,降低其频率以减少发热。这会导致 CPU 性能下降,在游戏中的占用率也会相应降低。
硬件故障:CPU 或其他硬件组件可能出现故障,影响其正常工作。例如,CPU 的某些核心出现问题,导致部分计算能力丧失,从而使游戏运行时的 CPU 占用率降低。
(二)确认 CPU 降频方法
查看系统信息或任务管理器(Windows 系统),对比当前频率与标称主频。
使用软件工具如 CPU-Z、AIDA64,查看 CPU 当前频率与默认频率。
通过 BIOS 或 UEFI 设置查看(适用于台式机),检查 CPU 频率显示与标称主频是否相符。
观察系统性能和温度变化,判断是否因温度过高导致降频。
最简单的方法是通过 perfdog 采集数据中发现有 CPU 核心不工作。
(三)内存问题判断
内存一直上涨不一定是内存泄漏,可能是正常内存使用变化、后台进程或系统因素影响、特定应用或场景设置等原因。确定是否为内存泄漏可通过长时间观察、对比测试、使用专业工具分析等方法。
(四)GPU 异常降低。
显卡温度过高:当显卡温度超过一定阈值时,为避免硬件损坏,显卡会自动降低频率
电源供应问题:如果电源功率不足或供电不稳定,无法为显卡提供足够的电力,显卡就不能在高性能状态下运行,导致 GPU 使用率降低。
游戏或应用程序本身的问题:
游戏或应用程序存在优化不佳的情况,对 GPU 的资源调用不合理,导致 GPU 使用率不能充分提高。例如一些小型游戏开发团队技术实力有限,在游戏代码编写和资源管理上存在不足,无法充分利用 GPU 性能。
游戏或应用程序中的某些设置不正确,限制了 GPU 的性能发挥。比如在游戏设置中,将图形质量设置过低,或者关闭了一些需要 GPU 加速的功能,可能导致 GPU 使用率较低。

寒霜引擎(Frostbite Engine):
《战地》系列,如《战地 1》《战地 5》等,该引擎能支持大规模的游戏场景,实现出色的物理破坏效果,并且提供高质量的音效表现和真实的物理模拟。
《极品飞车》系列部分游戏,为玩家带来紧张刺激的赛车体验,在车辆建模、赛道环境等方面表现出色。
Unity3D:
《王者荣耀》,是一款非常受欢迎的移动端 MOBA 类游戏,具有丰富的英雄角色和多样的游戏模式。
《炉石传说》,策略类卡牌游戏,凭借其精美的卡牌设计和富有策略性的玩法吸引了众多玩家。
《明日方舟》,二次元风格的策略塔防游戏,以其独特的角色设定和精彩的剧情受到玩家喜爱。
《纪念碑谷》,以其独特的艺术风格和巧妙的关卡设计而闻名,为玩家带来了一场视觉与思维的盛宴。
虚幻 4 引擎(Unreal Engine 4):
《绝地求生》,大逃杀类型的游戏,具有广阔的地图和紧张刺激的战斗体验。
《战争机器》系列,动作射击类游戏,以其精彩的剧情和激烈的战斗场面著称。
《堡垒之夜》,集射击、建造等多种元素于一体的游戏,拥有丰富的玩法和不断更新的内容。
《剑侠情缘 2:剑歌行》,武侠风格的手游,场景精致,人物画风独特。
Source 引擎:
《半衰期》系列,包括《半衰期 2》等,具有精彩的剧情和优秀的物理效果。
《反恐精英:全球攻势》(CS:GO),经典的第一人称射击竞技游戏,在全球范围内拥有大量的玩家和电竞赛事。
Cocos Creator:
《开心消消乐》,休闲益智类游戏,玩法简单易上手,深受广大玩家喜爱。
《保卫萝卜》系列,策略塔防类游戏,凭借可爱的画风和有趣的关卡设计吸引了众多玩家。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值