编写脚本机器人
为了在游戏上线前实际掌握服务器的承载能力,在游戏的开发流程末端都会引入压力测试。最普遍的一种测试方式是机器人模拟测试。通过脚本机器人在游戏中模拟一个玩家可能进行的操作,操作是随机的(除非某些关联操作,会写在一起),几千个机器人在服务器里面连续执行各种操作,测试各处功能的完整度。
脚本机器人是大部分CP在上线前的一个重要压测手段,因为这是低成本下最接近服务器真实状态的测试办法。机器人测试能够极大限度覆盖游戏的多数功能性模块,除了玩家的交互等随机性比较大的问题外,基础的功能测试基本都能通过机器人来实现。脚本机器人的压测方法成本很低,所以开发者们最好在游戏上线钱都做做。
真人压力测试
脚本机器人的能力有限,玩家交互和不同网络状况下的复杂情况是不能模拟的。这就需要真人压力测试来解决。
以拥有40000名玩家的TestBird为例,TestBird玩家都是从:游戏论坛、游戏公会、喜欢玩游戏人群中找出来的。通过众测平台管理,每一个众测玩家,在TestBird都有执行内容评价,CP可以有效测试游戏的真实上线情况。
TestBird做压力测试,是分批导入测试玩家。每导入一批玩家,观察服务器和客户端的相关指标(包括服务器的CPU、内存、带宽等占用情况以及客户端是否流畅)。在接近服务器极限性能时,就不再导入新的测试玩家。然后记录在极限情况下, 服务器和客户端的相关指标。然后,继续把这些玩家导入到下一个游戏场景,直到测试出每一个游戏场景的极限能力。花一次压力测试的钱能测试多个游戏场景的极限值,尽量让客户的每一次压力测试价值最大化。
想要避免服务器上线被挤爆,CP们一定要做好压力测试。因为,只有这样才能避免游戏上线前投入的大量推广资金付诸东流。