程序人生:关于游戏性能测试的问题思考


黑盒发现瓶颈,白盒发现问题。性能测试,除了 压力测试 ( 黑盒)外, 在进度允许的情况下,还应当引入 到单元测试和 某些模块测试中(白盒),特别是复杂方法,必须在编码完成后进行性能测试, 这样保证了原子性的操作足够优化,才能保证整个系统的性能足够高。

不管是一个系统,一个模块,还是一个类,运行次数和单次运行时间的卷积最小,都是性能优化的根本目标;

并发数,响应时间, CPU 负载,和内存使用率,是服务器端性能的主要指标;

性能分析必须是主观分析和实际测试相结合,既不能让主观分析变成主观臆想,也要避免进行了错误的测试导致错误的结论;

无论怎么玩,游戏压力测试的方式,也都是那么三种:机器人模拟;第3方性能测试工具模拟;封测,公测真实性测试;机器人模拟缺点在 工作 量大,优点是可模拟性强,第3方工具是否能高模拟游戏,还有待验证;真实测试最靠谱,目前国内比较靠谱的有TestBird等,也可以选择各种工会,但是工会的质量良莠不齐,需要自行鉴别。

玩家的上线,下线,掉线,由于涉及到多个服务器的联动,具备牵一发而动全身的特点,所以它们是最有可能造成服务器宕机的; 相对而言,纯粹的正常游戏状态,很难让服务器死掉。

根据以上一点,除了关键游戏操作,压力测试的重点,也将是玩家的上线,下线以及掉线;

在实测中我们发现,服务器端的性能瓶颈主要集中在以下位置:

a. 玩家登陆数据加载

b. 实体进入场景引起的数据同步,以及由此引起的可能的外围逻辑;

c. 战斗, 特别是战斗动作的执行和数据返回

以下地方,最底层,调用运行次数最多,因而最容易影响性能,它们是否足够简单,单次运行时间是否足够低,对整体性能,有着最重要的影响:

a. 实体属性设置,特别是 hp , mp 的设置

b. log

c. 事件分发


最后:测试资料送上一波

技术行业,一定要提升技术功底,丰富自动化项目实战经验,这对于你未来几年职业规划,以及测试技术掌握的深度非常有帮助。

这份资料整体是围绕着【软件测试】来进行整理的,主体内容包含:python自动化测试专属视频、Python自动化详细资料、全套面试题等知识内容。对于软件测试的的朋友来说应该是最全面和完整的备战仓库了,这个仓库也陪伴我走过了很多坎坷的路,希望也能帮助到你。关注微信公众号:【伤心的辣条】,就可以直接获取了! 交流学习裙:902061117

如果文章对你有帮助,麻烦伸出发财小手点个赞,感谢您的支持,你的点赞是我持续更新的动力。

推荐好文:

包装成1年工作经验的测试工程师,我给他的面试前的建议如下

自动化测试到底要学什么?

为何跳槽不考虑腾讯?聊聊我和鹅厂的一点往事

自动化测试和手动测试哪个更高级?

新手必看:怎么写一个合格的测试用例?

python登录接口测试问题记录与解决 ( 干 货 )

猜你喜欢

转载自blog.csdn.net/weixin_50829653/article/details/114294357