一、工具意义
- 不依赖 PC 而直接在端上完成常规的自动化测试,提升自动化测试体验
- Soloπ 可以在不侵入被测应用的前提下,基于系统的辅助功能以及图像匹配能力的智能查找算法,能够对控件进行精准定位,在端上实现了控件查找能力。Soloπ 通过无线 ADB 方案对 Android 应用进行提权,避开了端上应用受系统权限管控的限制,具备了原本 PC 自动化框架借助于 ADB 工具才拥有的便捷操控(如点击、滑动、输入等),在端上实现了事件驱动的能力。
- 无线 ADB 方案:目前市面上的自动化测试、性能测试方案,大多是基于移动设备的 ADB 能力,通常需要 PC 来驱动。Android 系统为了测试、开发人员更好地进行调试,还提供了一种基于网络通信 (Socket) 的 ADB 连接模式,这种模式不需要 USB 连接,只需要保证网络连通即可远程控制设备,因此设备的控制端就不局限于 PC 一种,任何按照 ADB 通信协议与调试端口通信的设备,包括 Android 设备自身,都可以替代 PC 的角色。
总体简单来说:
SoloPi是一个无线化、非侵入式的Android自动化工具,公测版拥有录制回放、性能测试、一机多控三项主要功能,能为测试开发人员节省宝贵时间。
二、工具安装
1. 用Chrome打开网址下载Solopi.apk,然后安装到手机
下载地址:Releases · alipay/SoloPi · GitHub
手机安装好如下图所示:
2.电脑端环境配置
2.1、电脑端下载Android SDK,安装到电脑(之前ui自动化安装就不过多说了)
下载地址:https://developer.android.com/studio/releases/platform-tools
2.2、电脑端安装完成后启动Android Studio,安装对应安卓版本工具
3、配置SDK环境变量
3.1、环境变量中添加ANDROID_HOME
3.2 系统变量中添加SDK的Path路径分别指向platform-tools和tools
测试是否配置成功→在DOS下面输入adb version,出现如下图所示界面,表示安装配置成功
3.3 开启手机开发者模式
3.4 链接adb
- 通过adb devices 获取手机id
- 通过命令adb tcpip 5555 配置链接端口
3.5 Android机启动Soloπ
第一次启动Soloπ时,会申请读写权限
Soloπ第一次使用各项功能时,会提示该功能所需要的各项权限,如下图所示:
默认会申请以下权限:
- adb 权限
请勾选“一律使用这台计算机进行调试”,点击“确定 - 悬浮窗权限(直接授权)
- 添加到后台白名单(添加就行了)
- 动态权限申请(授权)
至此,全部安装授权完成,可以使用了~
三、工具使用
1、录制回放
优点:用户无需编写任何代码情况下,实现了一套纯端上的录制回放运作模式,克服了传统自动化框架中环境依赖多、驱动靠 PC、测试代码不易编写等不足,提供了更好的工具使用体验。
目前测试可采用此种方法,进行上线前,功能回归
使用方法:
- 点击录制-选择待测应用-输入用例名称、输入用例描述-开始执行-进行各种操作、断言
- 回放:可以单条用例回放,也可以批量回放。可导出用例,用于其他手机端使用
- 回放结果:成功/失败,执行操作、参数、回放状态、失败的节点可以显示出来
2、性能测试
在无线 ADB 方案的基础上,提供了一套使用便捷、数据比较完善的性能检测工具,能够监控 CPU、内存、FPS、耗电、网络流量等常规指标,其中 CPU、内存为进程维度指标,FPS、网络流量为应用维度指标。
除了采集常规性能指标,Soloπ 还加入了页面加载耗时计算的功能,能够简单快速的获取从用户操作到屏幕变化停止的时长,直观反映用户体感的加载耗时。
3、一机多控
多机联动的操作模式。在以往的兼容性测试中,测试同学往往需要在多台设备上重复进行测试,这种工作不仅费时费力,而且容易产生遗漏。一机多控(操作一台设备,其他设备都会同步联动)使得业务同学不再需要执行重复操作,可以将注意力更多地放在待测界面在不同设备型号、分辨率或系统版本的显示效果上。