为测试赋能,腾讯 WeTest 探索手游 AI 自动化测试之路

作者:周大军/孙大伟, 腾讯后台开发 高级工程师 商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处。 原文链接:http://wetest.qq.com/lab/view/333.html

WeTest导读

做好自动化测试从来不件容易的事情,更何况是手游的自动化测试,相比传统的APP,手游画面纯OPENGL绘制无可识别控件,且界面动画多、随机性大。举个例子,拿新手引导来说,手游中新账号试玩会有一系列的新手引导,当新手引导过程通过之后,后面就不会再出现,但当账号升级到一定等级,又会出现新玩法的新手引导。且手游的版本迭代非常快,平均1-2周就会出一个版本,界面也经常发生变化,这些都给自动化测试带来很多障碍。

为解决手游自动化测试的这一瓶颈,腾讯WeTest依托腾讯人工智能研究的技术优势,率先尝试将基于深度学习的人工智能应用于手游测试当中,开启AI手游自动化测试时代。2017 ChinaJoy WeTest展台上火爆的贪吃蛇AI互动展示,正是这一探索的成果之一。

AI自动化测试系统,开启手游测试新风向

腾讯游戏的QA团队,对于更高质量手游的追求从未停歇过,如今AI大火,技术上也有比较大的进步以及成熟的框架,这也给手游的自动化测试带来很多新的可能性,目前腾讯内部也有不少团队在积极研究手游的AI自动化测试,大体上分为两种,一种是让AI模型可以测试绝大多数的手游;另一种则是基于特定的手游做更细更有针对性的AI测试模型。

1、AI自动化测试系统的处理过程

手游自动化测试最重要的核心,在于如何让电脑更智能的模拟真人的操作行为。一套基于深度学习的AI自动游戏系统,可以通过迭代训练,让机器自己做出动作决策,从而完成一系列的游戏操作。

AI自动游戏系统主要由4部分组成,说明如下: ● 处理模块1:负责和手机交互,UI自动化操作,管理,结果记录和存储等; ● 处理模块2:负责游戏UI界面的识别; ● 处理模块3:负责识别一局游戏内的物体和数据等; ● 处理模块4:负责决策玩游戏的动作决策,采用深度强化学习算法;

AI自动游戏系统整体框架如下图:

以天天酷跑为例,看AI自动化测试实战演练

以天天酷跑游戏的AI自动化测试为例,整个测试过程主要分为前期训练、接入测试、性能与结构反馈三个步骤:

前期训练 前期训练得到神经网络的权值(文件),后面测试只需要让神经网络加载这个权值(文件)就可输出学习到的动作决策,达到自动玩游戏的目的。

系统采用特定算法对模型进行训练。训练结果如下图,横坐标是玩的游戏局数,纵坐标是一局跑的里程数。整个训练过程共进行了上万局游戏,随着训练的次数增多,每局的里程数也在上升。

接入测试 天天酷跑游戏运行在WeTest云真机上,自动化进程和云真机交互,实时抓取游戏画面数据。

进入游戏后,检测进程识别游戏画面中的物体和数据,例如天天酷跑中的台阶、坑、柱子等物体信息以及距离等数值信息。游戏画面和识别出的物体和数据最终发给深度学习进程作为输入,深度学习进程的输出就是执行玩游戏的动作,例如天天酷跑中就是“下蹲”、“起身”、“跳跃”等。

一局游戏结束后,再重复上述的过程进行下一局测试。

性能和结果数据 AI在玩游戏的同时,系统可以获取手机的性能数据和游戏的结果数据,并在网页端进行展示。

如下图所示,每一行对应天天酷跑一局游戏,分别展示了手机CPU利用率,内存使用量,电池电量,温度,玩一局跑的里程数和游戏时间以及死亡前的游戏画面。

除了天天酷跑,AI自动游戏系统已接入腾讯多项精品游戏的测试工作。

腾讯WeTest携AI自动化手游测试,为游戏创造更大价值

使用AI自动游戏系统进行手游测试,游戏厂商可以借助AI的智能轻松实现类似于人工测试时在真机上玩游戏的过程,节省大量的测试人力成本。

随着人工智能技术的飞速发展,简单机械的游戏测试工作必将逐步向自动化、智能化转移。腾讯WeTest作为游戏质量的守护者,将为游戏开发者们提供操作更加便捷高效的AI自动化测试方案,让游戏开发者能更多地专注于游戏创意性、可玩性、操作习惯等更需要创意的环节,为游戏创造更大的价值。

关于腾讯WeTest (wetest.qq.com)

腾讯WeTest是腾讯游戏官方推出的一站式游戏测试平台,用十年腾讯游戏测试经验帮助广大开发者对游戏开发全生命周期进行质量保障。腾讯WeTest提供:适配兼容测试;云端真机调试;安全测试;耗电量测试;服务器性能测试;舆情分析等服务。

点击地址:http://wetest.qq.com/立即体验!

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏云计算爱好者

边缘计算与云计算是什么关系

十年前云计算兴起和发展,近年“边缘计算”有着云计算一样的势头迅速走红。

3769
来自专栏人工智能快报

IBM提出认知存储技术概念

IBM研究院的科学家Giovanni Cherubini、Jens Jelitto和Vinodh Venkatesan在2016年4月4日出版的IEEE《计算机...

3216
来自专栏喔家ArchiSelf

老曹眼中的面向数据架构

数据是系统的核心,在面向服务的架构之外,也可以考虑一下面向数据的架构方式。面向数据的服务架构需要支持多数据源异构,支持动态数据和静态数据,既支持公有云部署又支持...

524
来自专栏程序你好

如何进行有效的数据管理

在过去的半个世纪里,数据管理极大地改变了计算机处理数据的方式。如今,数据可以不按顺序存储,而且仍然可以有效地使用。适当数据管理的有用性并没有丧失,因为它的原则远...

612
来自专栏镁客网

“剪掉尾巴”的PC VR,会是VR的未来吗?

1253
来自专栏SDNLAB

为什么边缘计算是物联网发展的核心?

目前很多连接的设备能够充分利用云计算的优势,但物联网设备制造商和应用开发人员发现在设备本身进行计算和数据分析将会带来众多的好处。 ? 在设备上进行计算和分析的方...

2555
来自专栏大数据文摘

为什么大数据应用需要敏捷?敏捷大数据方法论

1184
来自专栏数据猿

金融科技&大数据产品推荐:恒丰银行实时智能决策引擎

恒丰银行实时智能决策引擎是恒丰银行业务策略管理解决方案的核心产品,该产品让策略业务人员轻松高效地配置出风控、反欺诈、实时营销等场景下实时、准实时的决策模型/规则...

3668
来自专栏云计算D1net

边缘计算将取代云计算?别开玩笑了

任何人都知道,物联网并不是一个玩笑,而且它确实是云的一个组成部分。对于物联网来说有一个关键的问题,就是如何从大量的设备中获取数据。思科系统预测,到2020年,云...

3175
来自专栏云计算爱好者

云计算是否真的对企业来说无所不能?

云计算是并行计算、分布式计算和网格计算的发展,或者说是这些计算科学概念的商业实现。它将计算任务分布在大量计算机构成的资源池上,使用户能够按需获取计...

1967

扫码关注云+社区