游戏测试工程师在上网前是如何玩游戏的?

2020-12-25 16:09:00

指导:当谈到游戏测试工程师的职位时,常见的误解是用工资来玩游戏。然而,游戏测试工程师的主要工作是确保游戏的质量,并且需要反复测试各种游戏和应用程序。他们如何玩游戏?最近,威狐手游(NetEase Games College)在这个职位上进行了特殊的测试。

以下是分享的细节:

大家好,我是网易游戏的测试工程师小孟。在过去的几年里,我跟踪了很多项目,包括已经运营多年的旧项目和新手旅游产品。当我收到网易的邀请时,我的同学过来问我:你每天都去网易测试游戏吗?每天玩游戏好吗?事实上,这是对我们来自外部世界的误解,直到今天我们才知道,我们的地位不仅是在玩游戏,还在做很多其他事情。

软件测试的目的

在我们讲到重点之前,让我们先看几个短篇小说。

第一个故事是我小时候听过的叫做千年虫的故事。上个世纪,计算机年存储系统以两位数表示,比如八年或更长时间、九年,但到了2000年,它就无法工作了,因为这两位数变成了00,在新年期间导致了许多计算机系统的问题,因为计算机如果用一年来决定大小或逻辑,就会出错。因此,在2000年的第一天,出现了一场大危机,市政府的股票市场停止运作,导致了世界各地的巨大混乱。

第二个故事也是上个世纪的故事。阿丽亚娜5号火箭是在不到40秒的偏航和自毁时间内发射的,原因是4型火箭代码被重复使用,但该代码无法携带5型火箭溢出造成解体和爆炸,火箭携带通信卫星,造成数亿美元的损失。

如果软件有问题,后果可能非常严重。不久前,区块链的概念也更流行。我相信每个人都听说过它。一般来说,区块链是区块链,每个区块都是账簿。如果有新的交易,就会有新的区块,不同的区块形成一条链。单方面决策--决策成为多方共识。既然我们手里都有书,我们都同意这本账簿只是建立起来的。这一特点使我们很难伪造账目。

同时还有智能合约,区块链里,合同是通过代码的形式存在的。区块链的特性使得区块链变得十分可靠,但我们去搜区块链时,依旧会发现许多标题“一行代码蒸发64亿人民币”、“史诗级漏洞”、“重大漏洞”等字眼。

再先进的软件也会有漏洞,软件测试的价值,就是在事故发生前防微杜渐。软件测试的目的就是要保障质量,减少损失,改善体验。

软件测试是什么?

IEEE定义软件测试是是用人工或自动的手段来运行或测定某个系统的过程,检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。那么,我们需要做哪些测试呢?

1.功能测试

软件测试,首先需要进行功能测试,对产品各功能进行验证,设计测试用例,逐项测试检查是否达到预期。

2.压力测试

功能测试与大家印象中的测试是一致的,那是不是测完功能就可以直接上线了呢?一款软件上线前面临的风险是非常多的,我们来举个例子,比如说双十一零点的服务器崩盘,春运火车票购票系统瘫痪,这些面临着同一个问题:压力问题。

同一个软件少数人可以用,但大量人同时使用就会出现各种各样的异常,要应对这个异常,我们就要做压力测试,模拟实际应用的场景,长时间或超大负荷去运用这个软件。如果一个游戏没有做压力测试,上线后玩家蜂拥而至,导致服务器爆满,多数玩家就会因为登不上体验不好而流失。这是我们都不愿意见到的痛心局面。

3.性能测试

游戏里常见的基础设置画面,一般可以选画面质量和帧模式是不是高清。这里有个疑问,既然游戏已经做出了好品质,为什么不让大家都用高清画质呢?

这里主要考虑到手机的性能,就是我们常说的性能问题,在游戏上线前,我们需要做性能测试,性能测试需要模拟多种正常、峰值以及异常条件对系统的各项性能指标进行测试。

性能测试和压力测试有些相似,在我们手机游戏测试语境里,压力测试为游戏服务器的测试,性能测试偏向于游戏客户端测试,我们去检测哪些性能指标会更有意义呢?卡顿,帧率,还包括内存、CPU、电量等,在上线之前,这些都必须先做测试。

4.安全性测试

另一个方面就是安全性测试,也就是我们用各种手段来发现安全漏洞的过程。游戏中会面临很多安全漏洞,如加速器,战斗的时候进行加速;修改器,增加战斗数值,更严重的,游戏核心资源和数据会被玩家轻易获取,这些漏洞非常影响游戏环境和游戏寿命常见的防范有通信加密,内存加密,代码混淆等手段。

5.兼容性测试

常见的一种情况,在某些银行等网站,出于安全考虑只兼容IE或IE核心的浏览器,这里就涉及到一个兼容的问题,游戏也是一样的,手机游戏面临的兼容性问题比较严峻,因为手机有很多品牌,不同的系统不同的CPU,以及各类个性化的设计会导致游戏兼容出现问题,因此我们需要做兼容性测试。在这么多设备中根据几个标准筛选出能够覆盖到众多玩家的测试机群来做测试。如操作系统、设备类型、分辨率、芯片等标准。

6.易用性测试

除此之外还需要做易用性测试,一款软件一款游戏好不好用,好不好玩,用户在使用软件时是否感觉方便等体验,我们需要进行评估,判断软件交互的适应性、功能性和有效性。


如上所述,测试的总貌就是这样,软件测试是一个系统的工程,除了大家印象中的功能测试外,还有其他非常多方面要做,如压力、性能、安全性、兼容性、易用性等等,往后有机会将为大家分享游戏测试的具体方法和步骤。

本文来自威狐手游,本文观点不代表威狐手游立场,转载请联系原作者。