您知道您的手游有多少兼容性问题吗?您知道这些兼容性问题都是什么原因造成的吗?您知道怎么去解决这些问题吗?您以为兼容性测试只是安装和启动测试那么简单?您知道过去这样的轻视和忽略很可能给您造成了上百万的损失吗?
近日,由专注手游的云测试平台TestBird撰写的《2014中国手游兼容性测试》(以下称)正式发布。这是全球首次针对手游兼容性问题进行研究和解析的,首次为业界定义了10大手游兼容性问题,完整展现了手游兼容性问题现状,系统诠释了手游兼容性问题的分类,深度解析了手游兼容性问题的根源,并提供了诸多的真实有效的解决。
到底什么是兼容性问题?用哪些指标可以准确考核和定义兼容性问题?哪些性能指标会影响到手游兼容性?以往,我们单纯地将手游兼容性测试等同于安装和启动测试。可是如此的草率和不专业,意味着在手游上线前的第一步,您就已经错失先机。
里将兼容性问题分为10大类,分别是安装失败、启动失败、游戏闪退、游戏卡顿、游戏卡死、数据异常、UI异常、游戏链接异常、程序异常、游戏黑屏。性能指标则包括CPU占用率、内存占用值、IO等待率、温度、启动时延和流量共6项。
在手游产业,任何一款手游产品都必须经过兼容性测试后方可上线。然而,由于传统的兼容性测试周期长,测试成本较高,加上兼容性问题属于隐型问题,不及游戏画面、游戏内容和操作设计等因素那般具象,导致兼容性问题长期未受到手游开发者的重视,但因兼容性问题导致的用户流失和成本损失,却是以数十百万计的。
《2014中国手游兼容性测试》的研究数据显示,平均每款游戏存在52个兼容性问题,因为不兼容造成的用户流失率达21%,假如每款游戏20万用户,按照行业常规,一个用户的导入成本为10块,那么每款游戏因为兼容性问题导致的成本损失将达到20万人21%10元/人=42万元。
打破了传统手机兼容性测试粗糙的分析方式,利用TestBird手游自动化云测试平台强大的游戏分类能力,在对卡牌游戏、策略经营、角色扮演、塔防游戏、跑酷竞速、飞行射击、消除游戏、棋牌扑克、动作格斗、体育运动、虚拟养成、休闲益智等12个不同类别的游戏进行逐个分析后发现,整体上来说动作格斗和角色扮演类兼容性问题最多,但是在每个具体的问题上,每类游戏确实各有不同。
通常意义上,几乎所有人都认为角色扮演和动作格斗类RPG重度游戏应该是流量消耗最大的一类游戏。可是通过的研究却发现,平均流量消耗最大的实为虚拟养成类中度游戏,而RPG重度游戏甚至连前三都排不上。
的报告还显示,在CPU占用率上,体育运动类游戏最高,棋牌扑克类最低;在启动时延上,飞行射击类游戏最大,体育运动类最小;在内存占用上,动作格斗类游戏最高,棋牌扑克类最低;在IO等待率上,酷跑竞速类游戏较高,体育运动类却较低;在手机平均温度上,卡牌游戏最高,体育运动类最低。
TestBird采用了全球领先的鹰眼引擎测试技术,在深入近3000款游戏内部进行测试后,对发现的134812个兼容性问题进行了统计分析,发现游戏闪退、游戏卡死、UI异常才是兼容性问题占比最高的3大类问题。其中游戏闪退现象最为严重,占比高达37.18%,游戏卡死现象占比则达到了18.53%。
市面上,系统的手机品牌高达数十个,从三星、联想、华为等主流品牌到其他非主流的品牌手机,到底哪个品牌的手机兼容性较好?不同手机内存大小对手游兼容性影响到底又有多大?另外,不同品牌手机的CPU也有所异同,那么不同的CPU是否也会影响到兼容性问题的发生?
TestBird通过对816款测试手机,历经近3000款游戏测试后发现:对比各品牌的兼容性问题数,主流品牌的兼容性整体好于非主流品牌。兼容性问题最少的品牌当属三星,每终端每款游戏的失败率(即平均每款终端在每款游戏上的不兼容率)仅有3.82%,联想和小米的兼容性也表现优异,失败率不足5%。而其他非主流品牌的失败率则高达10%以上,兼容性问题非常严重。
在内存大小对手机游戏的兼容性的影响方面,的研究表明,内存越大出现兼容性问题越少,256M的兼容性问题最多,兼容性问题检出率高达82%。而随着内存的加大,兼容性问题发生概率明显呈现出逐步减小的趋势。
而在不同CPU品牌在兼容性问题的表现上,展讯出现的兼容性问题占比最大。兼容性表现最好,检出率最低的,并非我们所熟知的联发科和高通两大类CPU品牌当然,它们二者表现也不错而是海思和Marvell。
此外,还针对不同游戏引擎的兼容性问题发生概率进行了研究,发现自定义引擎出现的兼容性问题最多,检出率达32%,而常用的cocos2D-X和unity3D游戏引擎的兼容性问题的检出率分别是28%和27%,相对表现较好。
“我们将报告奉献给广大的手游CP、发行和渠道,希望能给行业分享一些经验和干货,打造更精品的手机游戏。”这是报告开头的第一句话,透过这句话,能了解到TestBird发布这份的初衷。而在长达47页的最后,TestBird也确实毫无保留地针对各项兼容性问题,叙述了详尽的解决方案。
游戏卡死现象很像ANR(applicationnotresponse)。系统在一定时间内发现UIthread没有响应,就会出现弹框报错。比如输入事件,等待通常是5秒。主要原因是在UIthread做了不必要且费时的操作。比如访问网络操作、本地数据读写操作、游戏计算下一帧数据操作。解决方案是把这些费时用异步的方式完成。UIthread只做响应用户操作以及绘制UI的事情。开发过程中可以StrictMode来检查一些潜在ANR的代码风险。开发完以后,可以使用android工具Systrace和Traceview对游戏的性能瓶颈进行分析,避免ANR。
网友评论 ()条 查看