solopi工具

备注:未经博主允许禁止转载,如有问题,欢迎指正。

个人笔记(整理不易,一起努力~)

笔记目录学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客

个人随笔工作总结随笔_8、以前工作中都接触过哪些类型的测试文档-CSDN博客

目录

一:下载安装

二:录制回放

三:性能工具

四:一机多控


SoloPi是阿里开源的一个无线化、非侵入式的Android自动化工具,公测版拥有录制回放、性能测试、一机多控三项主要功能

一:下载安装

官方下载:https://github.com/alipay/SoloPi/releases

wiki:https://github.com/alipay/SoloPi/wiki

testerhome论坛:https://testerhome.com/topics/node152

SDK帮助文档:https://developer.android.com/tools/adb?hl=zh-cn

把开发者模式开启,把USB调试模式开启,把adb.exe的路径弄到path环境变量中

我下面拿模拟器来操作,注意了,模拟器本质是一个本地虚拟设备,adb默认通过本地TCP端口(如5555)与它通信,属于"有线"连接,只要你确认adb devices下有设备就行

当然也可以用无线模式,对安卓版本有要求

https://developer.android.com/tools/adb?hl=zh-cn#connect-to-a-device-over-wi-fi

要注意一些事项:

1:确保您的工作站和设备已连接到同一无线网络

2:在设备上启用无线调试-使用配对码对设备(在开发者模式里),注意是用里面的那个id和端口,而且要高版本的安卓

如果你在执行命令行的时候提示adb: usage: unknown command pair说明你的adb版本太低了

可以去SDK平台下载:https://developer.android.com/tools/releases/platform-tools?hl=zh-cn

3:当然在低安卓版本,也可以使用 USB 线将设备连接到主机,然后使用命令行做无线操作,成功后再拔USB线就行(这个高版本安卓也适用)

先检察设备是否连接

复制代码
#设置目标设备以监听端口 5555 上的 TCP/IP 连接
adb tcpip 5555

#拔掉连接目标设备的 USB 线

#通过 设备IP 地址连接到设备(一般在wifi那可以看到ipv4地址)
adb connect device_ip_address:5555

第一次启动Soloπ时,会申请读写权限,获取读写权限后,Soloπ会将运行过程中获取到的各项数据存储到/sdcard/solopi目录下,如果不授予读写权限,Soloπ会使用/sdcard/Android/data/com.alipay.hulu/files/solopi目录作为存储位置。之后所有涉及到使用/sdcard/solopi目录的操作都需要替换为该目录

反正授权就好了,后面的USB调试,悬浮窗权限也授权

  • 性能数据上传地址:Soloπ通过一机多控、录制回放或者性能工具录制的性能数据上传地址。
  • 响应耗时上传地址:Soloπ通过一机多控、录制回放或者性能工具录制的页面响应耗时上传地址。
  • Plugin拉取地址:Soloπ拉取额外插件的地址,如果需要使用响应耗时与图像查找功能,需要配置为可用的地址。注意:请将Plugin拉取地址设置为https://raw.githubusercontent.com/soloPi/SoloPi/master/<abi>.json,否则Soloπ的一些功能将无法使用
  • 自动清理文件:Soloπ会自动清理已下载文件中修改时间超过配置天数的文件,默认配置为3天,点击可进行修改,配置为-1表示不进行删除。
  • 日志中隐藏操作信息:开启后会隐藏Soloπ日志中的控件信息。
  • 导入外部用例:Soloπ会从/sdcard/solopi/import文件夹导入json格式的用例,导入完毕后会将原始文件删除。

二:录制回放

Soloπ能够将用户的操作记录下来并保存为自动化测试用例,支持在其他设备上进行用例回放。支持重复回放、批量回放等功能

在这里我也发现,有些app如果冷启动的话,会导致solopi控件查找能力失效,哪怕设置了sleep也没用。所以我在设置那边去掉了"回放前重启应用",在对应的页面去执行脚本

也可以批量回放脚本

三:性能工具

SoloPi能够记录待测应用的各项指标,支持实时观察模式与录制模式,如在悬浮窗中观察实时更新的数据,如对性能数据进行录制,在录制结束后查看图表

Soloπ还支持性能加压,能够对CPU、内存进行限制,复现应用在性能较差、网络环境不佳场景下的表现;除了常规性能指标,还提供了启动耗时计算工具,同时,启动耗时计算工具还可以通过广播调用,可以非常方便的与UI自动化测试打通

比如我木木,先连接好adb,如adb connect 127.0.0.1:7555

在进入应用前,Soloπ会显示全局指标,进入应用后,Soloπ会显示应用最上层进程的相关性能指标

CPU、内存指标为进程维度,响应耗时、帧率、网络为应用维度,电池为全局指标

在目录里面确实看到很多文件生成了

我把数据目录pull到电脑上,-a 参数保证递归拉取所有子文件

adb pull -a /storage/emulated/0/solopi/records/20260215152048_20260215152203/ F:\gameTest\solopi\gzkj

注意:第一列为Unix时间戳

当然Soloπ提供了环境加压的功能,可以提供CPU与内存加压,由于android系统的调度,CPU与内存加压均存在一定限制,当应用处于后台状态时,CPU加压占比会遭到一定程度的限制,而内存加压过大可能导致Soloπ被系统进行回收

详情参考:https://github.com/alipay/SoloPi/wiki/Performance

四:一机多控

对用户在主机上的操作进行录制,发送给多台从机进行批量回放,支持批量安装、显示设备信息等额外功能

注意:Soloπ会提示开启辅助功能,需要用户点击前往开启进行手动开启,如果遇到辅助功能已开启的情况,需要用户现将辅助功能关闭后,再进行开启,如果始终无法通过校验,请尝试重启设备

当然了还有很多功能甚至源码,可以去论坛逛逛

相关推荐
Test_懒懒怪1 个月前
SoloPi的安装注意事项
solopi
少云清2 个月前
【功能测试】4_APP项目 _APP性能测试
功能测试·solopi·android自动化测试