TestBird高级测试工程师刘承杨和TestBird测试架构设计师陈雪松帮助用户解决unity,cocos2D-x,html5等游戏开发相关技术疑问,同时也有创业者在活动过程中问到了商业化的问题,TestBird工程师也针对其提出的问题进行了回答。

前面发了第一波,让大家久等了!第二波来袭!!!!

Q:项目前期,测试要做什么工作呢?

A:测试一定要参与到游戏的设计、开发工作中去。并且形成前期测试计划和用例框架。

1、只有参与到游戏的设计中,才能对游戏的逻辑构成有深入的体会。

2、只有参与到开发中,特别是游戏架构设计中,才能对游戏的内在联系有深入的了解。

3、基于开发的架构设计和功能模块间的内在联系,测试在前期需要形成测试计划和用 例框架。为后续测试工作的正常开展打基础。

Q:如何保持游戏玩家的活力?游戏测试我们应该主要注意哪些问题呢?

A:保持游戏玩家的活力需要游戏具有优良的品质,较高的可玩性和丰富的玩法,这依赖于游戏的策划和设计。从测试的角度,需要保证游戏程序运行的稳定性。一款频繁闪退、黑屏、动不动网络中断,贴图错乱的游戏,玩家是很容易流失的。

从游戏测试来说可以注意这些问题:

(1)游戏的兼容性问题是否突出

(2)游戏中新功能是否引发其他问题

(3)注意搜集玩家反馈的问题和需求,及时汇总处理和跟踪

Q:请问怎么进行自动化,为了自动化,代码结构上有什么要求

A:自动化测试不建议手游CP自己搞,1是资金人力投入大;2是技术难度非常高;3是使用面窄,就只有你自己公司的游戏;4是维护成本高,需要不断购入新机。

在我们的测试平台进行测试,大家只需要提交游戏APK发起一个任务,然后填写你的测试需求即可。我们会在极短时间内输出测试报告。

在TestBird进行测试,游戏代码无需做任何改动。即使是非常深度的合作,游戏代码的改动也是非常微小的。

Q:测试工作有哪些难点?

A:我认为最大的两个难点是:

1、兼容性问题测试工作量大,机型不全,无法充分测试。

2、概率性问题的发现和重现。

另外,我们测试者的工作量过于巨大,并且疲于重复低效的操作。做了许多事,但是都是比较低端的事情,没有精力放在测试用例的设计,探索性测试等深入的地方。导致后期游戏上线后问题频发。这需要我们测试者共同思考一个问题:测试者的精力应该放在那里?怎样才能解放测试者的双手?

最后需要提醒一下,我们需要区分测试工作中的重点和难点。有很多测试工程师无法区分测试工作的重点和难点,导致在测试难点中花费大量时间去攻坚,甚至没有认真思考过自己负责的产品决定成败的测试重点。

Q:怎么让游戏项目更好地融入自动化测试(需要开发过程注意些什么吗?)?能简单说下自动化测试针对Unity是如何进行的?

A:(1)开发过程中建议增加可测试性,如接口的设计、日志的吐出。便于在对位问题时获取更多的分析信息。日志中如果能突出引擎日志就更好了

(2)对于unity引擎,我们的自动化测试和其他引擎类似,不过针对unity引擎特点,安卓兼容性问题较突出,针对于此我们提供了如不适配机型的日志、截图、步骤、性能数据(内存消耗、cpu占用、帧速率等指标)的联动分析。

Q:TB-chengyang,你好,能不能推荐几款Unity前端开发常用的框架,如果开源的那更好啊,谢谢,一直苦于前端开发没有规范的框架开发。主要针对MMO这种。

A:你好,在国外的unity3d论坛上提到过有关mmo的框架.不过我们没有使用过,可以提供几个供你调研下。

1.Atavism

2.Photon Framework

3.Alk MMORPG Framework(这个应该是free的)

Q:我刚到  公司的时候  为了熟悉代码  经理给的任务便是做测试。请问

1.公司代码中不少函数是私有的,或者是void函数如何测试

2.我用的Unity Test Tool 插件,把仅有的一份文档都看遍了,还是不得精髓,请问,大神用什么软件或插件做unity3D的测试。

3.当我测内存cpu帧测试时,用unity中profiler,感觉数据一直在跳跃,如何保证精确测试,即本游戏开始执行某一动作的及时测试信息(内存cpu或帧)

刚学unity 也是刚做测试的实习生 问题有些肤浅   跪请大神赐教 指点迷津~~~~~

A:大兄弟,你想要的是调试吧.既然你都有代码了,并且你的目的是熟悉代码,可以debug,打打断点.动手调一调,这样学习更快.

Q:我想问下,安卓平台下,为什么有的游戏那么容易闪退。。这个是什么原因呢? ...

A:你好,这个问题要从两方面来看:

1.引擎差异.从我们公司测试N款游戏的数据来看,u3d是很吃内存的.如果代码里存在内存泄露,一般在中低端机型上很容易崩溃.

2.android low memory killer机制.android系统里有一个内存回收机制,它按照优先级回收内存.如果内存很紧张的时候会回收掉前台进程,有可能就把游戏给kill掉.

建议在项目后期,做一做性能优化,主要针对下内存.

Q:请问 你们的测试  是通过 游戏装在终端  一遍一遍的 通过玩游戏来测试  还是 通过什么软件工具来测试(毕竟  不想错过这次大牛在线的机会 )

A:我们不是人工操作哈,是全自动化的。整套平台是我们自主开发的,这方面没有现成的技术方案。

简单的说就是我们会先人工帮你录制一套脚本,它会同时在几百部终端上自动回放,无需人工干预。

我们的测试内容包括:

600+部中国主流终端的手游兼容性测试;

手游性能测试,包括帧速率、流量、温度、启动时延、安装时间、CPU、内存等指标;

手游功能测试,包括新手引导、任务、活动、充值、商城、好友、团战等。

Q:对了SDK接入的包大吗?会不会影响游戏本身的运行效率?

A:我们的接入SDK短小精干,非常高效,不会影响游戏运行效率。

目前暂不不开放脚本录制,后续会考虑逐步开放。

Q:想问问一般正常游戏流程,是不是应该策划先行,然后配合美术,最后程序干活。。

我们现在做游戏都是程序先去炮灰,无策划无美术先研究各种技术点,然后策划介入仍然无美术,研究技术点,最后美术才参与,然后导致模型动作或者动画很多问题,正规的流程或者说快速开发的流程是怎样的?

A:你好,这个属于方法论的范畴.从开发的过程来看,没有一个通吃所有开发活动的过程.只有适合自己的.

站在开发者的立场,我们经常会抱怨需求变更,但是移动互联网是个拼速度的行业,起码要做到快速响应需求.

可以理解你所说的程序去做炮灰,只是做一个demo或者技术预研,在这个工程中你们不必投入太多,最好是有一个良好的设计以供需求变更.

团队内多沟通沟通吧,起码大家要做一个什么项目,在理解上要达到一个层次,好比打仗一样,大方向和战术方针要确定.

这个不算技术上的问题,只是分享下我的理解,希望能帮到你。