弱网环境测试
模拟弱网环境测试——游戏测试篇
大部分移动游戏的简单架构如下
为什么要做弱网环境测试
其实现在不论是端游、手游还是页游,在国内范围来说,我们一般情况下网速都不算差了。而且随着5G的逐渐普及,相信网速对于玩家的制约会更小,玩家的体验也会有一个质的变化。
那我们为什么还需要进行弱网测试呢?主要还是要考虑两个情况。一个是环境变化带来的网络之间的切换,例如高铁、地铁或者是走进商场连接了公用WiFi等等;另一个是出海运营或者是跨地域游戏运营的需求。不论是我们的游戏在海外运营、还是国内的玩家们开始更多的选择海外优秀的游戏产品,都会产生因跨地域而产生的网络波动和弱网环境。
弱网测试基本要点
首先让我们理清一下测试思路,看看弱网环境下都涉及到哪些测试要点。
从上图中我们看到,弱网环境主要分为两个部分,一个是弱网(即各个网络制式下的高延时和高丢包),一个是无网(即网络中断)。另外还要特别注意网络切换造成的各种问题,以及用户体验层面的测试内容。
- 弱网环境下的正常功能
关注不同移动通信制式以及WiFi、热点等网络条件下的高延时和高丢包的情况,需要在上述各类网络环境下进行游戏的冒烟测试。
- 无网状态测试
在网络中断或者切换飞行模式的情况下,游戏功能的表现、以及本地数据是否可以正常存储,以备网络恢复后重新与服务器进行数据交互的测试。
- 网络切换测试
也是需要进行冒烟测试,但是关注点在于网络模式的切换。
- 弱网数据同步
在弱网环境下还要注意区分上行和下行的网络阻塞带来的区别。
在上行流量延迟或丢包严重的情况下,需要注意数据是否还可以正常存储到服务器端;而在下行流量延迟或丢包严重的情况下,需要注意本地数据和服务器数据不同步带来的展示问题。
- 用户体验测试
弱网影响最大的还是对玩家的直观体验。所以在弱网和无网环境下,如何缓解玩家的焦虑情绪,设计合理的反馈信息方案是非常必要的。
- 服务器通信问题
这类问题并不常见,但是同样有可能因为服务器跨地域问题(服务器部署在不同地区的不同机房)而产生,从而导致部分功能无法正常使用。
游戏弱网场景分享
下面分享几个比较常见的游戏在弱网环境下遇到的问题。
- 回合制游戏或关卡副本的战斗数据结算
一般来说,在一些回合制游戏或者一些关卡副本的战斗中,客户端不会实时和服务器进行数据交互,而是在战斗结束后结算数据并回传服务器校验。所以在战斗过程中,如果发生延迟、丢包或者断网,而本地数据没有及时保存,那么在网络状况恢复后,就有可能出现因数据丢失导致服务器无法结算当前战斗的情况。
- 充值失败
充值问题往往是非常致命的,玩家把白花花的银子花出去了,但是游戏内什么东西都没见到,这会非常损伤玩家对于这个游戏和这个游戏厂商的信任。而充值失败的情况又是非常多的,我们今天不单独讨论这个庞大的话题,只提出由于网络问题导致的充值失败。
比如由于游戏的交易服务器和支付平台之间通信不畅,导致玩家扣款后支付平台无法正常将信息传回游戏服务器,因而游戏就不能向玩家发货。
这个情况下,就需要客户端本地需要保存好票据信息,以便在服务器之间的通信恢复后,重新提交票据进行补单操作。
- 客户端热更资源下载失败
有时候玩家们会遇到这样的情况,一个版本更新之后,别人都可以进入游戏了,但是为什么我打开游戏却提示“客户端与服务器不匹配”呢?有两种可能性,一个是由于网络状况不佳,导致热更文件下载损坏而无法加载,另一个就是遇到了DNS劫持,你本地社区的运营提供商可能缓存了某些旧文件,导致你无法下载到新的内容。
- 弱网提示不明确导致对玩家的误解
在登录和充值的过程中,我们都可以看到有条形或菊花形的进度条,这就是为了给玩家一个心理暗示:客户端正在处理某个动作,而不是出现了网络状况没了响应。如果没有明确的提示信息,很可能就会造成误解。比如我曾经在某个游戏测试过程中就遇到过这样的情况:在提交给苹果审核的版本里,充值过程中没有持续显示进度条,而身处美国的App Store审核人员在连接中国服务器的过程中出现了客户端网络波动,审核员就认为充值是失败的,进而驳回了版本审核申请。这就是没有做好弱网提示带来的一些不良影响。