数风流人物之《天天富翁》--说说成功背后的准备

由腾讯独代的“大富翁”题材作品《天天富翁》于2014年2月18日正式对外封测,上线之后迅速位列IOS免费榜第一,畅销榜前三,引起了一阵轰动。

《天天富翁》之所以能取得这么好的成绩,一方面是因为取材非常独特,是之前较少涉足的桌游类型;并且在玩法上没有拘泥于经典,在传统基础上融入养成,金钱,地盘,竞技这些有趣而时尚的玩法。

另一方面,依托着测试领域的细致入微,使得这款游戏新星在安全,兼容,网络等各方面的表现都显得完美无缺。

然而这款精品游戏在测试初期也同样存在着各种各样的问题,下面就让我们一起来看看WeTest测试平台让这款游戏发生了哪些脱胎换骨的变化。

一、服务器性能及稳定性

对于一款游戏来说最重要的就是服务器的性能。天天富翁上线前重点做了核心逻辑服务器单机容量测试以及24小时稳定性测试,需要满足单机容量达到设计容量,事务处理99.9%成功,最大事务处理耗时低于1s,且无内存泄露、进程崩溃等问题。在这款游戏的测试中,发现了3个比较严重而又在游戏测试中比较经典的问题,在这里与大家分享。

1.登录场景问题

首轮测试登录场景最大值只有100TPS,按当时腾讯手机游戏用户规模,需要达到至少400TPS以上。经过测试发现其登录过程行为逻辑过重,保留了过多的用户上下文,严重影响了场景的TPS值。经过性能瓶颈定位、逻辑优化、反复回归验证等多轮改进后,成功的将这一指标提升到了1200TPS.。

2.服务器内存泄漏问题

在24小时压力测试过程中服务器表现较好,但在运行10天后出现服务器进程崩溃的突发事故。经过使用WeTest的GAPS长时间压力测试后发现,问题的主要原因定位在频繁的数据库和文件读写导致系统分页储存越来越大,最终崩溃。天天富翁在韩服运营时由于线上压力小,并且7天做一次停服,所以这个问题未暴露,而在中国区运营以后用户数量翻了好多倍,且对于稳定性有更高的要求,因而受到了更高的挑战。这个问题解决以后天天富翁服务器稳定性有了质的提升。

3.服务器雪崩风险提前发现

在使用GAPS测试的过程中对大区服务器持续加压,发现一台数据库节点IO/CPU压力远大于其他节点,稳定性测试持续时,慢查询逐渐增多,最终出现大区服务器正整体无响应。仔细大区服务器对数据库排查后发现,当热点数据库相应越来越慢时,队列里的平均等待时间被无限放大,直到全部消息都持续超时。

服务器端出现的问题远不止以上三个,游戏服务器出现问题在腾讯是一场重大事故,虽然这种事故的产生是突发的,却是有迹可循的,如果不对细小问题,比如运行速度逐渐变慢这种细节加以足够的重视,正真瘫痪时就会让问题变得难以解决了。WeTest服务器压测方案有一整套的方法论和实践总体来优化提升服务器性能,完美的帮助项目解决了上述问题,保证所有大区都健康运行。

二、客户端性能及安全反外挂

1、安全性提升与保证

在测试工具的选择上,我们利用hook api设计了一套hook回调测试的方法(非常适合交互强的副本场景)与协议测试工具结合,成功发现了5个安全风险,其中包括4个“删除卡片失败后无法回滚”和“单局游戏可以选择隐藏关下”这样破坏游戏规则和公平性的高风险问题,最后都成功修复,保证了游戏和玩家的利益。

2、客户端性能测试及优化

在客户端性能优化的过程上,我们按照IOS与安卓的不同机型对CPU占用率,内存,电量测试,游戏流量这四个重要指标进行了测试,选择的场景包括启动游戏,登录游戏,单人游戏,联网游戏等,所有的测试全依托于WeTest的手游性能测试解决方案进行,对于性能指标进行了详细的统计,回放及代码级别的瓶颈定位,解决了耗电过高、流量过高等问题,保证用户在游戏过程中的全方位体验。

三、机型兼容适配和弱网络测试

1.机型兼容适配

客户端适配测试主要是测试游戏客户端在各个不同版本手机端的运行情况,主要针对的场景包括游戏安装,游戏登录,游戏公告,邀请分享,好友送心,好友排行,游戏对局等。测试由WeTest的ATC实验室完成,总计发现6款机型存在Crash,白屏,功能失效,无法游戏等问题,最终全部修复,保证了游戏可以在绝大部分热门机型上使用。

2.弱网络测试

弱网络测试主要目的是找出游戏在较差网络下运行会出现的问题,通过模拟各种不同场景、不同网络制式信号,比如市区2G网络,高铁4G网络,楼宇间3G网络等,进行游戏,并针对网络重连、数据一致性校验以及用户体验等多方面进行评估改进。经两轮认真测试后,共发现54个严重bug,其中36个为严重级别,大大改善在不同网络条件下用的游戏体验。测试中使用的弱网络方案,目前已经在WeTest上线对外。

经过如此严密的测试和修复后,天天富翁上线后好评如潮也就不足为奇了。

数风流人物,还看今朝。目前随着腾讯“开放·连接”的战略开展,腾讯WeTest 平台正在将这一系列的测试技术与方案形成了产品功能,分享给手游开发者,让大家都有机会近距离的接触精品,最终制作精品。

更多技术干货?点击下方“阅读原文”~

腾讯WeTest官网: http://wetest.qq.com/

腾讯WeTest是腾讯游戏官方推出的一站式游戏测试平台,与全民突击、天天酷跑、全民超神等精品手游强强联手深入合作,十余年来不断为游戏提供优秀测试方案和测试工具,是推动腾讯游戏研发效率不断提升、对游戏开发的全生命周期进行质量保障的重要平台。

原文发布于微信公众号 - 腾讯WeTest(TencentWeTest)

原文发表时间:2015-11-27

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java学习网

处境艰难的 App 开发者们如何自救

处境艰难的 App 开发者们如何自救 「因为这个行业太饱和了,障碍太多而且难以从中盈利。相比之下研发网页就容易的多。」 这是我朋友的公司不再研发原生 App 的...

2287
来自专栏腾讯技术工程官方号的专栏

腾讯企业IT部蔡晨:从有界到无界,新一代企业安全防御之道

? 北京时间10月10日至10月11日,由腾讯安全发起,腾讯安全科恩实验室与腾讯安全平台部联合主办,腾讯安全学院协办的2018腾讯安全国际技术峰会(TenSe...

3282
来自专栏CSDN技术头条

顶尖程序员的五种思维模式,你具备吗?

《THe Effective Engineer》的作者Edmond Lau采访了很多硅谷顶级科技公司的顶尖软件工程师。他发现这些给世界带来巨大影响的的工程师们至...

21410
来自专栏SDNLAB

如何应对云网络中存在的问题与挑战(附DeepFlow白皮书下载链接)

在全球数字化转型的浪潮下,“上云”已成为企业数字化转型的主流选择,在赋能业务创新、弹性服务的同时,新场景给网络运维、网络运营、网络安全等方面也带来了全新的挑战。...

2183
来自专栏张善友的专栏

程序员水平分析

whattofix.com刊登了一篇Daniel Markham的文章《What Level Programmer Are You?》,文内将参差不齐的程序员按...

19210
来自专栏FreeBuf

Twitter账户活动情况分析工具 – Simple Twitter Profile Analyzer

注意,你的推文(Tweet)可能会泄露你的一些生活习惯和个人信息!作为一个每天都会使用Twitter的网络安全顾问,Twitter是一个获取和分享相关信息的最佳...

2385
来自专栏Java架构

顶尖架构师与普通程序员最大的5个区别!

《The Effective Engineer》的作者在写书的过程中,为了了解那些顶级程序员和普通程序员的区别,采访了很多硅谷顶级科技公司的顶尖软件工程师。他发...

1172
来自专栏北京马哥教育

我为什么说Python是全栈式开发语言?

Python 的排名从去年开始就借助人工智能持续上升,现在它已经成为了第一名。但排在前四名的语言 Python、C、Java 和 C++都拥有广大的用户群体,...

4329
来自专栏芋道源码1024

女博士工程师:聊聊硅谷互联网公司的开发流程

之前很多文章或多或少已经说了一些点,现在很多国内公司也参考了一些流程,最近从始至终参与并负责了两个比较大的项目。这篇文章就系统的说一下开发始终吧。总的说来,我们...

1224
来自专栏SDNLAB

浅谈融合SD-RTN ——毫秒级网络加速的技术变革

4726

扫码关注云+社区

领取腾讯云代金券