共计 3009 个字符,预计需要花费 8 分钟才能阅读完成。
背景
从计算机科学诞生开始,其次要指标一是计算(用计算机对大量数据进行解决),二是自动化(用计算机代替机械反复的人工劳动)。在半个多世纪后的明天,咱们诧异地发现,疏导计算机科学倒退的依然是这两个领域:大数据和人工智能(AI)。
而自动化测试,是人工智能畛域下的一个利用方向,和无人驾驶、机器人等一样,都是 AI 技术的利用场景。从技术的倒退角度看,自动化测试一共经验了四代倒退变动。从最早提出自动化测试思维,到现在将 AI 引入自动化测试,贯通其倒退的外围诉求就是心愿能无效的解决自动化测试中的工夫与人力老本问题。
在过来很长一段时间内,自动化测试都局限于传统的测试脚本驱动。无论是游戏开发人员应用的 Lua 接口,还是相似 Xcode 的 UI Test,抑或是通过 ADB/minicap 对 Android 设施进行简略操控的 Python Script,其本质都是人为定义规定的自动化操作模仿。传统形式只管工作量大,但实现门槛较低,容易上手,容易调试,也容易批改,在很长一段时间里都是自动化测试的支流计划。相干支流计划的差别通常也只限于自动化脚本接口或规定定义模式的不同。
然而,这种人工定义规定的计划都存在一些很显著的问题:版本迭代频繁。每次版本变动往往须要从新批改、调整脚本。对于较为简单或具备肯定随机性(例如游戏对局)的场景,难以通过简略的脚本调整对其提供反对。实际上,对于随机性极强的游戏产品,通常不会对游戏对局过程进行太多测试。
局部测试脚本须要产品自身提供对应的操作接口,用于获取游戏外部数据。而这种专用测试接口通常不会在正式公布版本中提供,因而对于真正上线的产品,难以用自动化脚本进行测试,只能靠人工测试。这一点能够说是导致自动化测试工具至今无奈大规模商业化、产品化的外围起因。
AI 与自动化测试
从 20 世纪 50 年代到 20 世纪 70 年代初,人工智能的钻研处于“推理期”。1981 年,Werbos 提出了多层感知器,引入了反向流传(BP)算法,尔后,神经网络失去了疾速倒退;1986 年,决策树的机器学习算法被 J.R.Quinlan 提出,也就是 ID3 算法;1995 年,Vapnik 和 Cortes 提出了反对向量机(SVM),其被作为一种能使机器学习获得重大进展的办法而失去推广;2005 年,三层的 NN 模型强势崛起,诸多专家在实践和实际上彻底激活了深度学习。2012 年,Hinton 课题组首次加入 ImageNet 图像识别较量,通过 CNN 网络——AlexNet 夺得冠军,CNN 网络吸引了泛滥研究者关注;2015 年,深度残差网络(ResNet)被提出,在泛滥较量中体现突出;2016 年,由谷歌旗下的 DeepMind 公司研发的阿尔法围棋(AIphaGo)战败了过后的围棋世界冠军李世石,成为第一个击败人类职业围棋选手、第一个战败围棋世界冠军的人工智能机器人,引起世界舆论的哗然。越来越多的技术畛域开始尝试联合 AI 技术进行开发。至今,AI 技术曾经在图像处理、语音辨认、艺术创作、主动驾驶等许多方面有了成熟的技术与稳固的利用。
在 2015 年和 2016 年 Google DeepMind 发表多篇游戏自动控制的论文,以及 AlphaGo 在棋类游戏上有了战败人类的先例之后,腾讯互动娱乐事业群的 TuringLab 团队开始思考如何利用最新的 AI 技术解决上述问题,并将其融入自动化测试工具中。从 2017 年到明天,通过多个产品的试验和腾讯外部多个部门的合作,TuringLab 团队胜利地开发出一套基于深度学习的自动化 AI 测试框架,并利用在多款世界出名游戏产品的日常测试上。
AI 技术的核心思想是利用已有的历史数据,训练出一个较好的 AI 网络,通过曾经训练好的 AI 网络来解决当下的输出数据。与传统的编程办法不必,通过 AI 算法训练进去的网络模型通常会有更好的泛化性。而在传统的自动化测试中,我的项目测试的保护老本很高,只有版本更新或性能产生变动,就有可能产生大量的保护工作。引入 AI 技术后,其带来的泛化性能够无效地缩小自动化测试的保护老本,在 AI 模型中编程能够不做改变,或者间接减少训练数据就能够很好的实现测试需要。
2020 年,TuringLab 团队基于深度学习的自动化 AI 测试框架根底,将其开发与利用教训具体整顿成了《AI 自动化测试:技术原理、平台搭建与工程实际》一书,与读者分享腾讯游戏是如何将 AI 技术与自动化测试相结合实现测试需要的。
主创团队
腾讯互动娱乐事业群 TuringLab 团队
由美国归国技术专家领头组建,成员包含多位图像识别解决和机器学习畛域的博士,以及多位专一于工程技术的专家。目前,实验室开发的 AI SDK 自动化测试平台曾经胜利接入腾讯公司的几十款在正式经营的商业游戏,并同时服务于 WEST 产品、即通手 Q 产品,以及各游戏工作室的多个产品。
[主编]
张力柯
腾讯 TuringLab 实验室负责人,资深 AI 零碎设计专家;美国德克萨斯大学圣安东尼奥分校计算机科学博士,曾先后在美国微软、BCG、Uber 及硅谷其余守业公司负责研发工程师及我的项目负责人等;
[联结作者]
周大军 :腾讯 TuringLab 实验室 AI 工程组负责人,有 10 年以上工程技术开发教训,负责开发的 GAPS(压测巨匠)获腾讯公司首届最佳工具奖,申请及参加提交工程、无人机、AI 相干专利 70 余项;
黄超 :资深 AI 算法研究员,先后在国内外重要的期刊和会议上发表 20 余篇论文,并提交 AI 相干专利 25 项;
李旭冬 :资深 AI 算法研究员,在国内外重要会议和期刊上发表学术论文 15 篇,申请 AI 相干专利 10 项;
申俊峰 :资深软件工程师,有 10 年以上工程技术开发教训,先后提交相干技术专利 10 项;
王洁梅 :腾讯高级工程师,先后提交发明专利 23 项,其中国内检索 2 篇;
杨夏编 :腾讯高级工程师,先后提交发明专利 26 项
书籍简介
《AI 自动化测试:技术原理、平台搭建与工程实际》一书共分了三个局部。
第一局部是原理篇,重点介绍图像识别算法、基于值函数和策略梯度的强化学习、模拟学习的钻研现状与在自动化测试中的使用等相干的 AI 算法原理,还具体解说了 Android 设施调试相干问题,为后续学习具体工具的落地利用打下基础。
第二局部是平台篇,将用长达 117 页的具体介绍为工程师们解说腾讯游戏 AI 自动化开发工具的设计与实现,包含和 Android 设施的对接、数据标注流程、AI 算法在游戏自动化中的具体实现、AI SDK 平台二次开发等。
第三局部是最佳实际篇,将通过不同需要场景下的实际案例,为工程师们展现在理论游戏产品的测试如何应用本书介绍的测试平台实现各类不同的需要,并可尝试在此基础上实现定制化性能。
结语
AI 作为近些年的技术热门话题词,有不少企业行业打出“人工智能”的标签制作噱头,吸引公众的眼球。在自动化测试技术多种多样的背景下,与 AI 技术联合的自动化测试方法却曾经在诸多适当的场景达到了进步生产效率,节俭企业的人力老本的成果。
从目前腾讯公司的 AI 自动化测试实际来看,多分辨率手机的相干测试如兼容性、性能、回归等节俭的老本是最显著且无效的。当初,TuringLab 团队将 AI 测试平台收费开源凋谢,如果用户感觉已有的算法或者性能不能满足测试需要,能够本人开发一些更适宜本人业务的性能与算法。《AI 自动化测试:技术原理、平台搭建与工程实际》一书也将更好的为你指引 AI+ 自动化测试的开发方向。当初点击购买,还可享受限时 8 折特惠!