智能化测试技术探索与实践——AAAS/IEEE Fellow、北京大学讲席教授谢涛阿里行
作者|金晖(定源)
编辑|橙子君
出品|阿里巴巴新零售淘系技术
谢涛教授简介
谢涛教授长期从事软件工程的研究,在软件测试、软件解析学、软件安全、智能软件工程、教育软件工程等方面做出了很多开创性的工作及突出的研究成果,因此先后当选美国计算机协会杰出科学家(ACM Distinguished Scientist),电气电子工程师学会会士(IEEE Fellow)和美国科学促进会会士(AAAS Fellow)。
谢涛教授对软件工程界做出杰出贡献和服务,获2020年度IEEE计算机协会软件工程技术委员会杰出服务奖(为其年度四大奖项之一)。
他于2007年与微软合作研发自动测试数据产生工具Pex,他设计和实现的Fitnex路径搜索技术集成到Pex里,成为其三大核心技术之一。自2015起,Pex被微软发布为Visual Studio企业版的IntelliTest主打功能,使广大Visual Studio用户受益。基于Pex,他还设计了一款新颖的编程教育游戏Coding Duels,拥有几百万的注册用户,并被微软研究院主办的编程之美大赛和Imagine Cup大赛采用作为其主要竞赛形式之一。
他于2010年与微软亚洲研究院合作,开创全新领域-软件解析学(Software Analytics),引领软件工程研究者在该领域开展研究。
他于2017年与复旦大学合作,研发应对产业界广泛采用微服务架构后所遇到的开发和运维挑战的解决方案,并自主研发了第一个中大型规模的开源微服务系统TrainTicket,赋能学术界和产业界联合开展微服务相关的技术攻关。
近期谢涛教授将围绕如何通过AI的方式提升端到端功能自动化测试的能力和价值与淘系技术部技术质量团队开展访问研究,共同探索手工探索式测试、Monkey等方式,成本和范围无法保障;目前端到端功能自动化测试工具“逐步执行、单点验证”为主的传统模式成本高、难以快速应用和推广等难题。
本次淘系技术部邀请到谢涛教授就“软件质量的下一个五年:智能化测试技术探索与实践”为主题,面向阿里经济体技术同学进行分享。
智能探索,极测we来
淘系技术质量掌门人崔婧(青灵),首先介绍了淘系技术质量(极测)团队的发展历程:淘系从服务化—平台化—智能化的质量体系演进。
以及淘系在智能化测试的诸多实践和探索模式变化:
最后对淘系智能化测试未来探索做了展望:
智能化软件质量创新:机会与挑战
在崔婧(青灵)的隆重介绍下,谢涛教授登场,从软件质量的全流程出发,分享了研发测试流程各个环节的智能化创新成果。
谢涛教授首先介绍了智能测试的分层:
并重点从测试用例执行、测试数据生成、测试预言生成三个方面介绍了智能化测试层次的实践:
首先是测试用例执行的智能化:
Thummalapenta, Sinha, Singhania, Chandra. Automating Test Automation. ICSE 2012.
其次在测试数据生成、测试预言生成方面:
介绍了智能编程机器人在研发、测试代码编写中提供的诸多智能化能力以及实践效果。
与微软合作研发自动测试数据产生工具Pex,其中的Fitnex路径搜索技术,在测试数据生成领域的智能化实践:
介绍了自然语言测试、持续学习能力、带参数的测试用例等更多智能化测试实战分享:
UEE测试新模式 - 极测机器人RXT端到端测试
最后,本次谢涛老师访问学者在淘系技术质量合作方代表金晖(定源),分享了淘系在UEE端到端智能化测试新模式下的探索和实践:
UEE自动化测试包括两大核心能力:
- 用户交互体验评测:通过IoT(如摄像头、传感器)等外部设备采集并将真实用户感受数字化,来获取最接近真实用户体感的性能及用户体验指标;
- 多设备端到端功能自动化:通过机械手实现同时多设备的跨终端的自动化操作执行;通过AI算法实现IoT设备的调度控制、场景理解、测试步骤执行、体验指标计算、异常处理等能力。
通过RXT机器人测试平台来开展UEE自动化测试:
▐ UEE自动化和UI自动化的差异
通过脱离被测APP本身的一些限制实现真正的端到端测试。并进一步屏蔽被测APP在不同平台(Android/iOS/PC/IoT)之间自动化操作层面的差异、避免软件层进行性能体验度量的干扰和差异、以及增加了多设备间交互式自动化的能力。
- 测试范围的差异:基于高速摄像头的外部视角+机器视觉算法的识别处理,UEE测试同时包含了端到端功能自动化+用户体验评测的能力。
- 精度的差异:高速摄像头摆脱了手机录屏软件对被测APP的性能干扰和帧率限制,将用户体验指标精度提升至10ms。同时可以统一衡量标准,以外部摄像头作为统一的标准来衡量不同手机机型、不同终端设备的性能指标,减少软件层面造成的衡量标准差异。
- 支持多设备跨终端的操作:基于机械手封装的执行引擎RXT,可以同时操作多部手机。将以外部用户的模式操作被测手机和APP,并可以同时操作多个设备。且用一套DSL脚本支持,屏蔽底层设备和操作系统的差异(Android/iOS/PC Touch/IoT系统等)。
▐ 未来展望
和谢涛教授团队一起在智能探索测试、智能验证、新一代智能化移动实验室等方向打造更加智能的测试机器人。
淘系技术质量团队
负责保障整个手淘、天猫主战的业务质量,这里有丰富业务场景和技术挑战,我们以技术驱动,将持续建设及完善整个淘系稳定性、提升用户体验。
如果您有兴趣可讲简历发至:dingyuan.jh@alibaba-inc.com,期待您的加入!
关注「淘系技术」微信公众号,一个有温度有内容的技术社区~

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
对话 Dubbo 唤醒者北纬:3.0 将至,阿里核心电商业务也在用 Dubbo
作者 | 北纬、赵钰莹 导读:2008 年,Dubbo 项目诞生;2014 年,由于内部团队调整,Dubbo 暂停更新;2017 年,北纬带领团队重新唤醒 Dubbo,并将其捐献给了 Apache 基金会。短短 15 个月,Dubbo 便从基金会毕业。如今,Dubbo 已经毕业一年,越来越多开发者开始询问 Dubbo 3.0 到底有哪些变化,阿里巴巴内部到底用不用 Dubbo,这是不是一个 KPI 开源项目以及 Dubbo 和 Spring Cloud 之间到底是什么关系。本文,将独家对话 Dubbo 项目二代掌门人北纬(GitHub ID@beiwei30),听他一一解答上述问题。 Dubbo 回归的这些年 Dubbo 项目诞生于 2008 年,最初只是一个阿里内部的系统;2011 年,阿里 B2B 决定将整个项目开源,一年时间就收获了来自不同行业的大批用户;2014 年,由于内部团队调整,Dubbo 暂停更新;2017 年 9 月,就在该项目将近 3 年没动静的时候,Dubbo 连续发布了好几个新版本,并且开始在内部招募对 Dubbo 感兴趣的同事。新版本背后的主力开发团队是阿里巴...
- 下一篇
Dubbo 3.0 - 开启下一代云原生微服务
作者 | 郭浩(项升) 阿里巴巴经济体 RPC 框架负责人 导读:本文整理自作者于 2020 年云原生微服务大会上的分享《Dubbo3.0 - 开启下一代云原生微服务》,主要介绍了关于思考 rpc 框架层面,功能演进的方向是什么?以及怎么更好地支持云上的多语言开发的新思考。 关注阿里巴巴云原生公众号,后台回复【818】即可获取直播回看地址和大会 PPT 合集。 看到这个题目,大家可能会有几个问题,比如,什么是云原生微服务?Dubbo3.0 是什么?和目前的 Dubbo2.0 有什么区别?用了 Dubbo3.0 会带来哪些业务视角的好处?后面的分享会对这些问题逐一解答。 这次分享分为以下几个环节: Dubbo 的演进历史 Dubbo 的开源现状 定义 Dubbo3.0 分享 Dubbo 3.0 目前取得的一些成果 考虑到有些同学对 Dubbo 可能不太熟悉,在介绍背景之前,我先简单介绍一下 Dubbo 是什么。简单地说,Dubbo 是基于 Java 的 RPC 框架。一个 RPC 框架至少由数据格式、传输协议和连接管理组成,这三点也是构成核心。Dubbo 能够被广泛应用主要有两个原因: ...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS关闭SELinux安全模块
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS7,8上快速安装Gitea,搭建Git服务器