【Game Of AutoTest】1、再度启程,重识游戏自动化测试

2022年的8月,结束了很长一段时间的犹豫,笔者决定开启新的文章系列:《Game Of AutoTest》,向外界公开自己近两年来在游戏自动化测试方面所沉淀的工作经验,以及许多关于自动化测试本身的思考跟想法。在先前的测试人生栏目中,曾经分享过许多关于游戏自动化测试的技术,但并没有一个比较系统化的输出。因此借这个机会,笔者也决定好好分享一下,从一个更加纯粹的技术人的角度,对于游戏自动化测试这一细分领域的理解。

自动化测试本身已经不是一个新鲜的名词,不论是游戏还是传统互联网行业,我们都能够见到自动化测试落地的身影。但是,自动化测试基础技术到底需要往怎样的方向搭建,业务应用需要覆盖哪些场景,这些话题其实很少被讨论,并且实际沉淀下来的知识分享和业务产出,也不尽然特别引人注目。尤其在游戏测试领域,自动化测试如何被应用到实际测试工作当中,相关的沉淀是少之又少,可以算是一片待开垦的荒地。

游戏自动化测试——这个名词本身都没有一个确切的定义。有些人认为,只有像自动驱动客户端玩游戏,测试场景物件是否正常交互,这种能够实际测到和测试用例相关的内容,才算是自动化测试;也有些人认为,像一些纯粹收集性能数据的场景,比如驱动玩家在地图里跑图,收集前后台数据,也算是自动化测试。这说明了,只要是用了程序化的手段,去完成游戏测试的整个或一部分的流程,那么就有可能被定义为一种游戏自动化测试的方案。但遗憾的是,正因为如此,很多测试工作者为了让自己的工作有技术含量,都会尝试沾自动化测试技术的光,为了技术而技术,用一些现成的自动化工具去做了个demo规模的东西,然后很阿里味地包装成富有技术含量的测试工作,但实际上相对于原来反倒增加了学习、维护、执行成本,是毫无价值的负优化。其中原因,归根到底,还是自动化测试这个工作被很多人小看了。如果你是个测试工作者,但业务经验、技术能力以及良师指导三者都很缺乏,并且业务环境上没啥落地场景,组织氛围也没啥支持的话,要做好自动化测试,那是非常困难的。

因此,我们有必要去重新认识游戏自动化测试这个概念。有几个准则:

  • 自动化——是技术层面不可或缺的关键点,且相对于人工能显著提升工作效率。
  • 测试——是最终的目标,整个测试流程里自动化过程可能只是其中的一部分,但这个流程不论如何最终都需要闭环,输出测试结论。
  • 游戏——是我们做自动化测试的对象。在这一范畴上,我们可以将游戏测试的自动化和日常工作提效的自动化区分开。

所以,要做到游戏自动化测试,落到实处,你需要:

  • 熟悉游戏自动化的各种技术方案。
  • 熟悉你的测试内容,并且从整个测试过程的角度挖掘可以通过自动化技术提升效率的优化点。
  • 评估你在技术实现上的工作成本,结合先前挖掘出来优化点实际的优化程度,来决定是否真正有必要去做自动化技术开发。技术实现的成本,可以参考几个维度:自动化技术的学习、自动化研发环境/基础框架的搭建、自动化用例的开发/发布、自动化用例的维护/迭代。
  • 做好问题分析与反馈机制。比如,你的自动化用例报错了,首先要界定是自动化用例的问题,还是游戏本身的bug;以及,发现了bug之后,应该怎样做反馈,怎样和已有的业务联系起来,实现流程闭环。这样让自动化技术的价值得到体现。
  • 时刻总结,不断迭代、优化你的自动化方案。不论是从时间效率提升角度,还是测试覆盖面/问题发现角度,都可以尝试扩充你的自动化覆盖场景。这样,才能够把自动化测试做深做大。

接下来,开始启程……

版权声明
本文为博客HiKariのTechLab原创文章,转载请标明出处,谢谢~~~