设备管控:主要是提供一体化的移动设备管理模块,支持设备管理、借用管理、真机访问等,承载着支付宝所有移动设备的管控与借用业务,相关功能模块见下图:
真机访问:本模块我们主要着手解决了实时获取到手机当前屏幕截图以及可以将浏览器上的鼠标或键盘事件回传到手机上并得以执行。工作流程见下图:
关于实时获取当前手机屏幕截图,有两种使用较多的方案:1.使用adb本身提供的截图命令screencap;2.使用开源的C程序gsnap生成截图。方案1简单,但效率低,大概每秒只能截图一张,不能满足实时性要求,方案2需要将此C程序编译并放到手机上,同时,手机需要被root,因为此程序读取/dev/graphics/fb0设备生成图片时需要root权限。
关于鼠标或键盘事件回传到手机并得以执行,首先需要开发一个Android手机上运行的控制台程序(此程序要能构造Android平台的MouseEvent对象并且发送给系统执行),打成jar包,将预先放置在手机的某个目录中,当浏览器中捕获到某个事件时,传送回服务器,服务器使用adb向手机发送一个命令及参数,执行之前准备好的命令行程序,之后命令被换成Android平台的事件并分发执行。
自动化测试:提供用例的同步与管理、测试工程的管理、测试计划管理、测试数据管理等模块,将自动化测试纳入到整个支付宝无线研发的流程体系中去,相关模块和用例特点见下图:
应用评价中心:可以将不同的应用发布渠道的热点评价同步到本无线平台,进一步分门别类的去进行分析。
其他:本无线测试平台还支持monkey测试、遍历测试、基于代码级的安全扫描、应用自动打包、一体化的质量报告体系等。