GAD名人堂丨专访腾讯游戏测试专家王鹏:游戏质量管理践行者
然后睡一觉起来,一切变了,变得那么让人猝不及防,那么让人心碎一地,在我要结婚摆酒当天,放了一个非常大的炮仗。先是微信登录鉴权崩溃了,所有腾讯移动游戏用户,注意,是所有,不光是我负责的这个项目,都无法登录微信区,然后用户都去QQ区玩儿,然后QQ区鉴权也扛不住了,于是两边都有问题了。怎么回事儿?! 为了修复一个实际上还可控的问题,导致全网用户无法玩腾讯游戏,这究竟是一个什么样神奇的事件?事件查明,我们在周末凌晨加班紧急修复的版本,构建用的是手动构建,不是平常在公司流程用的CI构建,虽然做了所有的配置文件对比,但命令行参数是不一样的。在正式构建环境中,微信某接口请求频率一般配置是5400秒,即90分钟,而开发环境中为了测试方便,配置是的60秒,且这个参数是通过命令行传递的,这导致正式发布后,微信某接口的请求暴增近100倍,而当时微信授权是所有游戏共用的,后面的事情,不用再解释了。 一处并不起眼的修改,一个需要紧急响应的外网需求,一个所有人都参与的常规正常流程,却惊起了滔天巨浪。质量管理真的任何一个小细节,一个小变更都不能轻易放过的工作,很多时候甚至给人吹毛求疵的错觉,但我认为这是对工作的态度,是测试的职业尊严。质量是全员责任,并不是测试一个环节完全可以搞定的,尤其在当前所有环节都要求非常快的整体节奏下,测试工程师作为产品质量的最后一道把关者,时常面临着各种挑战,时间,进度,问责,被轻视,背锅,其实这条路并不好走,我无法预知我能在质量管理这条路上能走多远,走多久,但是我相信我应该可以诠释好质量管理的意义。 2016年换了电脑桌,尝试把腰挺直办公以缓解脊椎问题 钻坚研微,攻无不克 GAD:您负责过众多的腾讯明星游戏,可以跟我们谈谈您攻坚过的技术难点吗? 王鹏:我负责攻坚的难点还是说说擅长的两方面吧,移动游戏上线前的压力测试和上线后的安全攻防。 手游刚上线的时候每天新进用户是好几千万级别的,这相比之前的PC端游是翻了好几倍,当时手游还是全区全服的架构,在服务器性能指标上有极高的要求,外界条件中还有不稳定的网络连接影响等等,这些都没有先例可参考。 我们选择使用自研框架GAPS和业界主流的LoadRunner进行了两套测试方案,并针对移动网络的特性增加了网络层面的重连模拟;对逻辑进程进行了代码层面函数热点分析,一点点的扣,不放过任何一个疑似高资源消耗的函数;在架构上对游戏关键路径上的非关键事务进行了剥离,保证万一有进程宕机用户在主流程上不会出现问题;前前后后一共做了几十次的压力测试,最终结果也经受住了GM的亲自评审,稳稳扛住了最高500多万的PCU,到目前为止,我们团队负责过的项目没有出过服务器端导致的事故。 手游安全方面当时整个业界也是空白,常规APP的加密方式对游戏不适用。而外网加速器,内存修改,协议包修改,各类游戏助手等都让人无比头疼。记得14年国庆长假我是在老家VPN加班渡过的,就是为了手游安全的问题。我们从收集外网作弊器开始,对这些工具进行逆向分析,研究作弊器的工作原理,一个个的针对性的进行封堵,以彼之道,还施彼身;同时,推动并参与设计游戏逻辑校验规则,在游戏数据上报环节进行复杂的校验,并且可以支持不停机动态增加规则,能够快速响应外网作弊案例的处理。参考端游戏前端安全的经验,对于手游前端敏感数据在内存中的存储方式提出一些可行的方案并正式应用,基本杜绝内存搜索类外挂。在不断总结积累经验后,在版本上线前进行安全测试,保证出现过的漏洞不会重现,并开始主动探索查找漏洞,消除隐患。 安全测试技术发展到今天,由我们中心SR团队过手的产品,已经很难再被外挂利用了。 拓宽技术广度 GAD:据我们了解,您是腾讯5S员工,很想知道在您看来,从事测试工作最重要的技能是什么? 王鹏:我个人是一个技术倾向的测试,所以认为技术知识的广度是第一重要。你需要了解你所接触的项目的技术,还需要了解如何提升测试专业深度和效率,因此技术面一定要广。可以不是某个编程语言开发的高手,但一定是拿起来就可以做事情的。很多人会写代码,但代码跑得快不快,稳不稳,其实是测试需要关注的,写代码的人一抓一把,但知道做性能优化的不见得很多。 沟通能力是第二重要,测试的工作需要与很多的人打交道,产品,运营,程序,项目经理,以及老板,每天至少有30%的时间是需要和不同的角色打交道的,因此好的沟通能力是非常必要的。毕竟有时候你还是想怼一怼人的嘛。 主动的态度和极致的细节追求 同事眼中的lotti “不近人情”的严厉,强到极限的责任心 “和lotti共事已经5年时间了,现在回想起来,真的非常幸运,能在刚刚毕业,初入职场的时候遇到这样一位leader。很客观地说,在这5年的成长过程中,lotti也一直是我努力的榜样。对lotti的第一印象是“严厉”,严厉得近乎不近人情,在转正前的3个月里,除了完成新人培训项目之外,他还要求我在业余时间阅读专业书籍,并且每周提交学习笔记,于是在鹅场的前3个月里,我是没有周末的。但是,随着时间的推移,我慢慢开始把这种“严厉”理解为专业、理解为责任心、理解为对工作的一丝不苟。开始做测试经理之前,我觉得测试经理的工作看起来非常简单,不就是管管外包,测测版本嘛。但是lotti告诉我,做测试经理绝非易事,需要高度的专业性和极强的责任心。他也用自己的实际行动,给我做了最好的榜样。这里不我得不得再提下当年lotti大婚日子时的酷跑突发版本事故,我想补充说明的是,lotti并没有因为自己当天结婚而撒手不管,而是一直在和各方沟通,跟进问题的修复和测试情况,直到下午修复版本测试完成,外网发布确认问题修复之后,才安心地去完成自己的终身大事。而当我们赶到婚礼现场的时候,他最关心的还是项目的情况,关心外网问题是否已经完全解决了。这件事情给了我很大的触动,作为一名测试经理,需要对自己的产品质量负责,需要对外网千千万万的玩家负责,强烈的责任感才能更好地驱使我们在这个岗位上更出色地为项目保驾护航。” 拍摄于瑞士 卢塞恩 GAD:大家都说,您在工作中是个非常“严厉”的人,对待工作,您一贯秉承的观点是什么? (编辑:顺游网_765游戏网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |