【腾讯优测干货分享】腾讯优测自研自动化测试框架经验总结与分享

【腾讯优测干货分享】腾讯优测自研自动化测试框架经验总结与分享_第1张图片


导语

      随着移动应用发布周期越来越紧凑、安卓品牌机型/屏幕/系统版本等碎片化日益严重,移动测试工程师的工作量日益剧增。自动化测试or手工测试?这个前些年争执不休的话题,近年来随着云测试平台的崛起似乎已有了答案——自动化测试取代部分手工测试已是一种必然趋势。
      这并不是说机器将取代人,而是人需要把资源集中在更“高端”的任务上,譬如测试方法设计、如何编写/录制脚本以提升自动化测试的效率和准确度等。
      对于中小型研发团队来说,考虑自动化测试,就必须得考虑ROI(投入产出比),自研自动化测试框架并不现实。然而市面上安卓自动化测试框架种类繁多,该如何选择,如何应用呢?

课程课程

      app自动化测试框架应用门槛并不低,这也造成许多人对其颇感兴趣但又望而却步。
      本视频课程将作为“经验贴”,与各位分享腾讯优测自研自动化测试框架实践与经验总结。
      课程大纲:
      1. app自动化测试概要介绍
      2. 安卓主流自动化测试框架对比与分析
      3. 腾讯优测自研自动化测试框架实践分享
      讲师介绍:
      Leohu(胡泊),腾讯优测自动化测试方案专家。2011年加入腾讯,2012年以来一直从事自动化测试平台搭建研究工作,实践经验丰富,为优测核心架构做出重大贡献。

点击此处观看视频课程

【腾讯优测干货分享】腾讯优测自研自动化测试框架经验总结与分享_第2张图片


问答部分

问:  新手该如何入门安卓自动化测试?
答:  了解安卓的基本原理是什么样的,一些基本的adb命令,了解Android主流的一些测试框架,看看那些适合你现在的测试需求,但其实自动化测试只是一种手段,最终还是要结合自己的业务,在非常熟悉业务的同时,分析哪些是可以自动化的,哪些弄成自动化可以大大节省人力投入,哪些是目前不适用于自动化的,然后有针对性的开展测试,测试完毕后还需要整理数据进行对比,看看真实的ROI是什么样子的,逐渐改善方案,快速跟进提升效果。
问:  面对多种自动化测试框架,该如何选择?
答:  Android的自动化测试框架有很多,主要还是看你的测试目的是什么样的,然后选择合适的框架开展测试,现在业界比较流行的是Appium框架,支持定位控件,支持web类应用,支持跨平台,支持多种语言编写脚本,基本上可以满足一般性的测试需求,但录制效率偏低,且大批量真机测试不是很稳定,XTest(腾讯优测推出的私有自动化测试工具)支持快速录制回放,并保证脚本的准确性,并能在大部分真机上执行测试,大家可以尝试一下。
问:  不同厂商机型测试有什么不同吗?
答:  各个厂商主要是针对自己的ROM会做一些定制化,例如权限弹窗,悬浮窗控制,电源管理策略,通知栏消息管理,静默安装等…
问:  腾讯优测自研自动化测试框架是否支持性能测试?
答:  支持性能测试,目前可以获取到cpu、各种内存、上下行流量、安装时间、启动时间、电池温度、fps、sm。
问:  腾讯优测自研自动化测试框架可以监控到native、h5组件吗?没有sd卡怎么办?
答:  支持native、h5、hybrid类应用的控件获取;需要配置一块sd卡,现在的手机一般都会内置一块自己的存储区域。
问:  游戏测试传统工具由于引擎渲染问题无法捕捉控件,腾讯优测自研自动化测试框架是如何解决的?
答:  目前主流的游戏测试引擎也就是cocos2d-x和Unity3d,这块的策略是从游戏引擎下手,通过用制定的引擎sdk打包或者将游戏包重新打包进特殊的sdk的方案,从引擎中获取当前场景内的显示元素信息,返回给测试框架实现控件的捕捉,还有一种方式就是用图形去处理,先找一个标示图,然后其他设备和这个图机型对比实现类似控件的捕获,但设备铺开后的速度,成功率都得不到可靠的保证。游戏有很多特殊性,比如变化比较快,逻辑随机等,导致你获取到控件后也很难测试,维护成本很高。
问:  加固过的包,可以做自动化测试吗?
答:  4.x的设备是支持任何加固包测试的,但5.x以上的版本加固会有一些限制,目前发现有些加固策略会导致测试失败,这块最好还是用非加固的包进行测试。
问:  root和非root手机执行时有什么不同?
答:  目前4.x的手机用的是root方案,root的优势是能获取到更高的权限,这样我们就可以做更多的事情,但5.x以上的手机,本身设备root率不是很高且不稳定,并且虚拟机模式基本都切换成ART,在ART模式下的Hook支持的都不是很给力,所以我们5.x以上的设备我们采用的是重打包的方案,可以理解为注入和入住的区别。
问:  一般的应用没有点击屏幕的权限, 这个问题该如何解决?
答:  脚本回放的时候用被测应用的Instrumentation发送相应的事件处理就OK了,系统权限等弹窗可以用UI Automator去进行识别处理。


---------------------------------------------------------------------------

打开月刊原文,阅览更多内容。

http://utest.qq.com/monthly/01.html

---------------------------------------------------------------------------

腾讯优测是专业的移动云测试平台,为应用、游戏、H5混合应用的研发团队提供产品质量检测与问题解决服务。不仅在线上平台提供自动化兼容性测试、云手机远程租用与调试、漏洞分析、自动化测试工具XTest等多种质量检测工具,更为VIP客户配备了专家团队提供定制化综合测试解决方案。


你可能感兴趣的:(【腾讯优测干货分享】腾讯优测自研自动化测试框架经验总结与分享)