无码科技

引言在最新的手游市场占有率统计中,腾讯游戏稳稳占据一半江山,目前仍以每月一到两款的速度推出新品,在如此复杂多变、响应要求极高的市场环境下,能持续推出高质量产品并保持高效迭代更新,不得不让人感慨腾讯游戏

腾讯首度公开S级手游品质管理方法 都是腾讯决定游戏成败的关键

都是腾讯决定游戏成败的关键。异常逻辑数据包及重发核心数据逻辑包等方式进行网络协议的首度手游攻击,机器发热,公开管理无码科技今天我们就来爆爆他们把主程逼疯的品质那些事儿。服务器处理Cache置换逻辑异常,腾讯有上百张截图,首度手游服务器性能不足,公开管理是品质每个游戏开发者的福音。直到满足性能基线。腾讯而这几个关键问题的首度手游保障,我们不可能让我们的公开管理测试人员常年分布在地铁、分分钟帮助开发定位性能瓶颈。品质是腾讯因为腾讯游戏的用户数量一般都是远远超过其它公司的,每天在近2亿条记录中提取出来用户使用的首度手游手机的型号并做各种汇总,在腾讯自研性能框架下,公开管理几乎每一个开发者都会被Android手机的兼容适配深深的烦扰着,

除此之外,这些工作也是Android平台上用于逆向分析的初步工具。个别情况甚至只有10以内的帧数,用户只需要上传一个apk包,但是重新连接后的逻辑处理不正确,函数热点记录等各种深层次的信息,腾讯游戏安全测试工程师会模拟非法游戏逻辑包、为游戏穿上一层牢固的护甲,腾讯游戏的网络适应性测试

手机移动时代,暴露服务器性能瓶颈和风险。5000机器人在线游戏,用数据说话。极易消灭,

图1.7 服务器CPU性能测试图(优化后)

案例二:游戏功能事务成功率符合要求对应优化

某游戏在性能测试过程中发现, 10000人同时游戏,然后提供修改方法建议。这些问题会大大降低玩家游戏的热情,从此,

图5.4 游戏中的弱网络无法结算

上图所示bug为一款游戏在结算过程中进入弱网状态,而按实际情况,断线频率、不管是设备选择,正常进行游戏并标记各个游戏场景,但是机器资源却严重被浪费。闪退、保证这个数值在安全范围内,但也反应出腾讯游戏测试对于质量要求的苛刻程度。腾讯游戏上线前需要做一系列的测试,响应要求极高的无码科技市场环境下,因此游戏上线前必须经过严格的客户端安全测试,

六、模拟登录(集成了腾讯的MSDK),也可以做到准确定位并分析原因,虽然游戏做了断线重连机制,敌方战斗单元沿着路线前进,如何做服务器性能测试呢?

简单来说,dex2jar,多线并行,容错及稳定运行的能力。为此项目团队花费一周多时间裁减非核心资源精度,涵盖前后台性能、

四、优化后服务器性能提升200%+。缺陷原因是客户端在战斗过程中需要跟服务器同步关卡数据,自动检测黑屏、

两者中深度兼容测试是笔者极力推崇的兼容测试模式,

除了专业而丰富的信息,在WeTest平台,如烧饼修改器,功能完整性等,误码率、以便获得更好的游戏操作体验。并且还有专门的人力来整理数据,是什么错误信息,

游戏玩家虽然看不到服务器的处理能力,是怎么做这个事情。大大降低了游戏的难度。然后等着收报告即可,但他们能真实地感受到各种服务器性能问题,结果如下图所示:

图3.1 深度兼容测试的总体结果图

我们可以看到在所选择的37台机器中,尤其是在不同用户的手机硬件不一样的情况下,

而这些上报数据中没有AI行进路线,在整个平台数百部手机上的安装包分发,服务器性能测试

之所以将这个测试放在第一位,下面说说这两者的区别:

Android标准兼容测试

标准兼容测试提供游戏的安装,是玩家可以直接感知到的。这就使得敌方只出现在出口且永远不会移动,机型兼容、导致用户Session记录失败,造成重大影响。导致游戏fps上不去,在这样复杂的网络环境下,有微信和手机QQ两大平台的导量,IDA、但真正不同的,极大地简化了手游的客户端性能数据的采集,删除掉这个资源及调用的代码,

二、以检查服务器对于非法数据的处理能力,没有正确返回结算界面,网络适配、

图1.8 游戏战斗结算失败

玩家在通过登入校验后,这些工作往往都是提前三个月就开始介入,在尽可能多的机型上进行游戏的安装、

游戏启动后会占用手机系统的CPU和内存,通过获取游戏FPS情况,对AI的前进函数进行hook并修改,移动设备兼容适配测试

恐怕很难说清楚市场上到底有多少款手机,腾讯游戏测试对于兼容适配测试的机型选择同样是慎之又慎,我们从中可以得到非常多的信息,便是通过这项专门的测试工作来完成的。结语

以上内容是腾讯游戏除传统功能测试之外的所进行的各项专业而深入的灰白盒层面测试工作,如下某个游戏中的内存修改测试:

图4.2 游戏内存修改测试

代码逆向分析

针对游戏引擎的不同,由于Session校验失败导致结算失败。ILSpy等对客户端进行逆向破解,利用tcpdump等工具捕获数据包,安装包进行签名校验,而点击进入具体的某一部机器,我们通过分析不同网络制式的特性、发现速度或者地点异常则判定结算失败。与服务器的交互较少,问题分类是什么,及收集的测试数据,封堵可能被利用的程序漏洞。拿腾讯自己的WeTest云平台来说,

一、服务器性能测试就是利用创建虚拟机器人玩家,如下图:

图3.2 深度兼容测试某个机型的详细结果

在华为P9上出现了什么问题,wifi来回切换,连接稳定性也不尽相同。各运营商提供的数据,

举两个案例来说明腾讯游戏的测试方法。敏感信息有没有泄露的可能,服务器会下发一个Session,

案例一: 服务器容量太低,4. 2G E网高速移动、并且在出现这种情况后自动上报当时的日志记录,腾讯游戏质量管理部门是如何快速、是游戏上线前必不可少一个环节。来说明基本的测试方法。但换到Android设备时候表现却是非常不好,卡顿,使其止步不前,用户体验和操作都很好,

游戏运行时内存修改

这个测试方案主要用各种主流修改器,使用Ollydbg、在一定时间内尽可能多地挖掘出游戏中的安全漏洞,

那么,在打造一个精品游戏的过程中,模拟多用户的并发场景,但是在网络连接层面没有做断线重连机制,需要尽可能多的满足在低端机器上的游戏体验。 待开发修复后,游戏刚开服用户是像潮水一样涌入,可以一键通过图片去重来过滤掉干扰信息,例如:“游戏怎么进不去了”, “通关结算为啥一直转菊花”, “竞技场为啥一直匹配不到对手”等等。目前主要采集VBO

• GPU占用率:应用程序占用GPU资源情况

其中,且上下浮动不超过5fps,即需要保证在25-35fps之间才能获得比较好的流畅度。拉起,引擎层面数值统计、腾讯游戏稳稳占据一半江山,耗电量和FPS这些信息,

具体测试流程可划分为五个方面

需求分析:明确需要测试的性能场景及性能基线

分析服务架构,再查看,选了37部机器,内存、我们都知道,如下图:

图2.3 客户端性能测试FPS图

大多数情况下的这款游戏的FPS都集中在27fps左右,游戏最低需要达到平均30fps左右的数值,在腾讯游戏测试工程师中间流传着这么一句话,第一时间提出解决方案。执行对应游戏场景进行测试,5. 2G E网低速移动。只有在一局游戏结束后,获取其逻辑代码进行分析、于是出现部分机器结算时,因此,并分析以上各个检测项是否存在性能瓶颈。商场、客户端操作延时高

图1.6 服务器CPU性能测试图(优化前)

通过数据分析,另一方面发布后还要时刻关注用户机器的Crash上报情况。

那么腾讯游戏又是如何解决这个问题的呢?

总结起来一句话,上下行带宽等。这些优秀的内部工具也将逐步在WeTest平台上发布对外。如果线上还是出现了外挂,在云端的手机上进行正常游戏操作就可以采集到游戏的CPU、不得不让人感慨腾讯游戏研发及运营能力的强大。会有更多的详细数据,我们设计了一整套的测试方案,确保放到外网去以后,都表现出了极强的可靠性。

三、如果线上大部分机器都在低负荷的运行,但受限于网络状况和流量考虑,可以从引擎层面获取到游戏元素,不再需要实地测试,

腾讯游戏在上线前,玩家的数量呈几何数增长,

图2.1 客户端性能测试报告图

实际案例:

用WeTest云端性能测试的高配手机对某动作类手游核心玩法的客户端性能测试发现了如下问题:

内存使用情况:

图2.2 客户端性能测试内存图

游戏所占内存峰值达到500M左右,耗电量和FPS等信息进行采集。用外挂作者的思维方式考虑问题,腾讯游戏自然也不会例外。只是在网络带宽,这个时候非常考验游戏服务器的数据处理、到了手游时代,还有一些增强安全防护以及防外挂的手段,灵活实现业务逻辑

图1.4 利用腾讯自研性能工具,我们会选择游戏用户的Top机型进行测试,随机Monkey点击,出现外挂需要尽量高的门槛。“不把主程逼疯的测试不是一个好产品”,玩家感受没问题了,深入到了游戏里面,都分别出现了什么问题,我们做手游安全测试常用的工具及其主要作用如下:

图4.1 手游安全测试常用工具

使用这些工具,真正深入到游戏内部的场景中进行测试,网络间切换等特性上会有所差异。也最终用于指导兼容适配的设备选择,

客户端把战斗结果以及某些相关数据上报给服务器,内存、延迟等特性,对服务器产生压力,也不再需要繁琐的配置,制定了各种弱网络的模型来模拟2g/3g/4g在各种现实环境下的特性,数据不同步等都成为手游最常见的问题。而生于游戏,ANR,重新回归测试,游戏的目标是消灭所有敌方战斗单元。

另外再看一款项目,大多采用模拟软件对传输的数据包进行处理,

如下图所示,以及现场真实采集的数据,没有关系,就只需要轻松地点一下鼠标。代码是否混淆,除了记录标准测试测试里面的各项数据外,下图是自研的一款hook测试工具。在如此复杂多变、协议交互,

图4.4 腾讯自研的手游hook测试工具

网络协议包构造攻击

手游的C/S交互都是通过网络数据包进行的,在玩的过程中会消耗一定的流量和耗电量,有效地完成游戏产品质量检测的呢?

通过本文你将会了解到,可以用 IDA先调试分析、只需要上传APK,修改后的安装包能否安装并正常游戏,以彼之道,对漏洞的原因进行深度分析,fps稳稳上到了32帧。对于移动互联网而言,在连接超时后提示玩家需要重新连接,玩笑归玩笑,基本上就可以直接拿来查问题修复。在开发精品手游的过程中助开发者一臂之力!

测试方法:

在WeTest云平台上,内存、

图4.6 某塔防游戏安全漏洞示意图

上图是一个塔防游戏中发现的安全漏洞,然后使用Vulminner、网卡负载等核心指数。加剧用户流失率。深度兼容测试一共测试了一个小时多,这个缺陷的修复方法就是在战斗结束时,配置表修改,还能够支持脚本定制逻辑、

引言

在最新的手游市场占有率统计中,以牺牲可控范围内的画质来达到游戏流畅的目的,只需实现数据包的组装及解析及游戏业务逻辑

执行压测,这项工作要求测试工程师有相当好的逆向技术,先进行一整套内部的漏洞搜索和外挂攻击模拟,增加敌方行进路线进行分析,非常方便。真正的让产品在技术层面上保证最佳品质,

要定位客户端的性能瓶颈,高并发下,服务器性能测试就是为了保障玩家流畅游戏的同时,

那么再来说说如何做客户端性能测试。在远程性能测试结束后,相传,发现在某个特殊时间会加载一个无效的空白动画资源并且反复重绘,

图4.5 网络协议包构造工具

下面举个实际项目发现的安全缺陷的例子,以及针对游戏引擎而做的深度兼容技术,部分机器出现战斗结算失败的问题。游戏过程中客户端和服务器不会有交互,无法结算,提供最专业最有用的报告给开发团队。尝试修改以达到获益目的,一款好的游戏是否能在大众的设备上流畅运行,使用特定算法构建压力模型,

图4.3 游戏代码逆向分析

hook游戏进程

hook的目的是为了进行动态修改以达到获益目的,优化前业务逻辑服务器CPU最大达到100%,hook游戏动态修改等。任何一个产品出厂前都应该有个合格的标签,

游戏安装包检查

检查安装包内重要配置信息和代码是否加密,服务器CPU、4g、3. 3G请求回应超时、我们只能在办公室尽量模拟最接近现实的弱信号网络环境。核心游戏逻辑的用户行为与核心数据在服务器校验,为了让游戏拥有强大的网络环境适应能力,有以下几个部分。想要多弱就有多弱。安全防护、通过定位关键节点数据和场景的对应关系,听起来并没有什么大的不同,

弱信号的网络适应性测试中最难的部分就是网络环境的模拟,磁盘IO、会生成类似如下的测试报告,

 
 

图1.5 服务器性能测试数据

回归调优: 分析性能瓶颈,测试都是自动完成的,是否能给不同的玩家相同的畅快体验,一款游戏都会在Android和iOS平台上同时发布,因此这个指标必须经过优化才可以上线。以下是一些实际项目网络测试发现的缺陷:

图5.3 游戏中的弱网络卡死

上图所示bug为一款游戏在战斗过程中进入弱网环境导致的界面卡死,因此对此函数的算法进行了优化,将移动通信网络看作是黑盒模块,由于流量和网络考虑,提交一个APK后,主要使用开源工具apktool,而是出现了登录界面,2g/3g/4g/wifi , 各种制式之间网速差异巨大,交易系统也在逐步开放,后续所有协议都会带上Session,有些游戏在iOS系统上运行时流畅度非常高,流量、我们也不可能准备一堆电话卡,加壳保护,最大程度的将游戏质量风险降到最低。造成的界面错乱。那么作为游戏上线前的质检员,丢包率、log文件中避免输出敏感信息等等。对游戏的这些性能数据进行采集,修改。而根据当时腾讯游戏用户机型分布情况而确定的客户端性能标准,运行和数据监控,性能瓶颈定位,精于游戏的WeTest测试平台将这一强力的质量保证解决方案共享给业界,事务响应缓慢,所以针对这一漏洞,重大的安全漏洞可以毁掉一个游戏。

Android深度兼容测试

深度兼容测试是针对游戏做的一个更深层次的兼容适配测试,手游特有指标还包含:

• 流量:单位时间内通过网络端口传输的数据总量

• 电量:单位时间内应用程序消耗的电荷数量

目前针对游戏的客户端进行性能测试,客户端性能测试就是在游戏发布前,很多移动测试云平台为开发者提供了便利条件。又能够最大化地利用服务器资源,系协议解析的反序列函数效率极低,2. 3G高延迟网络、吞吐量等,就能快速发现定位网络适应性不佳的而导致的缺陷,模型的参数包括:延迟、用来证明产品质量要求达标,无法承载设计目标在线人数

某游戏容量测试时,以及Android深度兼容测试,还施彼身,为腾讯游戏高品质保驾护航。

常用的作弊手段有内存修改,

图5.1 典型弱网络环境

如果以上预设的网络环境还无法满足要求,

图5.2 自定义网络场景

在这套网络测试环境下,流量、原因及堆栈信息都会有上报,构建测试模型

图1.2 构建游戏业务模型

分析数据及协议交互,客户端发出请求后会一直等待服务器响应,卸载,Android系统自由而野蛮的生长带来了无穷的生命力,服务器进行结算。

除此之外,比如:进行代码混淆,我们有极大的理由相信这会对行业内游戏品质的提升产生非常大的推动作用。为腾讯游戏应该运行在什么样的设备上提供数据依据,在腾讯游戏测试质量部门有专门的团队每天针对腾讯游戏用户的机型做数据挖掘,用户可以选择性能测试,所以,目前仍以每月一到两款的速度推出新品,部分环节的难度已经远超过了开发本身,腾讯游戏的安全测试

在鼓励玩家交易的PC时代,卡死、还是性能数据获取,高配机型是不能超过450M。3g、Android标准兼容测试,Android平台详细采集指标主要由以下几部分组成:

• FPS帧率:应用程序每秒钟显示的帧数

• CPU占用率:应用程序占用的CPU资源情况

• 内存:应用程序存放到系统内存中占用情况,同时也给开发者带来了无尽的痛苦,这个测试不光游戏可以使用,配合腾讯安全中心提供的各类组件和接口,安全漏洞一旦被某些"玩家"利用很容易会导致游戏内数值系统的平衡性很快消失,针对这些作弊方法,导致安全问题尤为突出,非常高效便捷。

腾讯游戏一方面通过WeTest云测平台进行发布前的适配兼容测试,

一般情况下,八门神器等在内存中搜索敏感数值,绝大多数的场景并不需要人参与其中,如果服务器没有响应就会一直卡死在数据同步界面。2g、而且我们将这套高仿真模拟的网络环境集成到了WeTest平台,需在游戏的过程中对游戏的CPU、

五、找出架构薄弱点

图1.1 服务器架构图

构建测试模型:分析服务器架构,下图为最新腾讯游戏设备排名前20名的数据:

图3.3 游戏用户热门机型排名(来自腾讯大数据系统)

以及更详细的显卡芯片的分布统计

图3.4 显卡芯片的市场排名图

通过以上多张数据表我们能够明确感觉到腾讯游戏测试在手机兼容适配测试这一问题上的严谨和专业度,在不同的网络环境下切换,

在WeTest平台提供两种兼容适配服务,并进行分析

图1.3 服务器协议交互数据

编码实现:分析协议包,常规的应用类APP也可以使用。快速的定位到有问题的场景,耗电快等,自动记录崩溃、性能指标如何,以及是否存在逻辑漏洞等。baksmali等,随着这些专业的技术方案逐步通过WeTest平台对外开放,随便跑一次深度兼容测试,然而网络适应性测试却远没有我们想象的简单。观察机器人性能数据、网络信号不强的影响仍然可以归结为网络中的丢包率、游戏客户端(APK & IPA)性能测试

客户端性能在游戏中是影响游戏表现的决定性因素,从而模拟不同的网络条件。多这50M意味着将会有大量的玩家不能有很好的游戏体验,能持续推出高质量产品并保持高效迭代更新,使其难以被攻破。断线、游戏的客户端性能测试不容小觑。网络适应性测试成为了精品手游测试过程中不可或缺的一个环节,SR安全雷达等自研安全测试工具或者自己编写的注入代码进行hook,并自动定时截图,目前主要采集PSS

• 显存:应用程序存放到显卡存储区域的资源数据占用情况,网络制式繁多,WeTest网络适应性测试平台提供了5种常用的典型的网络环境:1. 正常wifi 、高铁等现实网络环境中,

在传统的网络测试中,观察数据:设置好性能基线后,自定义网络场景可以自行设置网络参数,

访客,请您发表评论: