SoloX:Android和iOS性能数据的实时采集工具

这篇具有很好参考价值的文章主要介绍了SoloX:Android和iOS性能数据的实时采集工具。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SoloX:Android和iOS性能数据的实时采集工具

github地址:https://github.com/smart-test-ti/SoloX

最新版本:V2.7.6

一、SoloX简介

SoloX是开源的Android/iOS性能数据的实时采集工具,目前主要功能特点:

  1. 无需ROOT/越狱: Android设备无需ROOT,iOS设备无需越狱。高效解决Android & iOS性能测试分析难题。
  2. 数据完整性: 可提供FPS、Jank、CPU、GPU、Memory、Battery 、Network等性能参数,这些您都可以轻松获得。
  3. 美观的报告看板: 可随时随地存储、可视化、编辑、管理和下载使用任何版本的SoloX收集的所有测试数据。
  4. 好用的监控设置: 支持在监控过程中设置告警值、收集时长、访问其他PC机器的移动设备。
  5. 比对模式: 支持两台移动设备同时对比测试。
    1. 🌱2-devices: 使用两台不同的设备测试同一个app。
    2. 🌱2-apps: 使用两台配置相同的设备测试两个不同的app。
  6. API收集性能数据: 支持python、API收集性能数据,帮助用户轻松集成在CI/CD流程。

二、环境要求

  1. 安装 Python 3.10 + Download
  2. 安装 adb和配置好环境变量 (SoloX自带的adb不一定适配你的电脑,建议自己安装) Download

💡 Python 3.6 ~ 3.9 , 请安装solox版本低于2.5.4.

💡 如果Windows用户需要测试iOS,请先安装Itunes. 参考

三、安装部署

默认安装:pip install -U solox (指定版本:pip install solox==版本)

指定镜像地址安装:pip install -i Simple Index -U solox

💡 如果网络无法通过 [pip install -U solox] 下载, 可以尝试使用镜像下载,但是可能不是最新版本。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

启动服务:python -m solox

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

启动服务自定义IP地址和端口:python -m solox --host={ip} --port={port}

启动服务后,建议使用谷歌浏览器访问使用。

四、使用方法

(1)通过浏览器直接使用

使用python -m solox启动服务后,将自动使用本机默认浏览器打开solox页面。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

接入手机设备后,可以在左上方选择设备、应用包名、进程名,并点开始即可开始收集性能数据。本示例以京东读书为例。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

开始收集数据中。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

停止数据收集,将自动跳转到报告页面,可以查看分析报告、导出、编辑、删除报告。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

查看分析报告,可以另存为html、png文件。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

  1. 2-devices: 使用两台不同的设备测试同一个app。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

  1. 2-apps: 使用两台配置相同的设备测试两个不同的app。操作方法类似,不再赘述。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

但是貌似cpu、内存、网络没数据信息。

iOS设备操作使用方法同上。

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

(2)使用python收集

Android应用性能数据收集:

from solox.public.apm import APM

from solox.public.common import Devices



d = Devices()

pids = d.getPid(deviceId='9TM9K236030218xx', pkgName='com.jd.app.reader') # for android



apm = APM(pkgName='com.jd.app.reader',platform='Android', deviceId='9TM9K236030218xx',

          surfaceview=True, noLog=True, pid=None)

# apm = APM(pkgName='com.bilibili.app.in', platform='iOS') only supports one device

# surfaceview: False = gfxinfo (手机开发者 - GPU渲染模式 - adb shell dumpsys gfxinfo)

# noLog : False (为false时才会存储测试数据到log文件中)



# ************* 收集单个性能指标 ************* #

cpu = apm.collectCpu() # %

memory = apm.collectMemory() # MB

flow = apm.collectFlow(wifi=True) # KB

fps = apm.collectFps() # HZ

battery = apm.collectBattery() # level:% temperature:°C current:mA voltage:mV power:w

gpu = apm.collectGpu() # % only supports ios



# ************* 收集全部的性能指标 ************* #

apm = APM(pkgName='com.jd.app.reader',platform='Android', deviceId='9TM9K236030218xx',

          surfaceview=True, noLog=False, pid=None, duration=20, record=False) # duration : 秒 (持续执行时间) record: 是否录屏(只支持安卓)

# apm = APM(pkgName='com.bilibili.app.in.ios', platform='iOS',  deviceId='xxxx',noLog=False, duration=20)

if __name__ == '__main__':

     apm.collectAll() # 会生成HTML报告

输出结果:

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

iOS应用性能数据收集:

rom solox.public.apm import APM

from solox.public.common import Devices



d = Devices()

#only supports one device

apm = APM(pkgName='com.jd.reader', platform='iOS')



# ************* 收集单个性能指标 ************* #

cpu = apm.collectCpu() # %

memory = apm.collectMemory() # MB

flow = apm.collectFlow(wifi=True) # KB

fps = apm.collectFps() # HZ

battery = apm.collectBattery() # level:% temperature:°C current:mA voltage:mV power:w

gpu = apm.collectGpu() # % only supports ios



# ************* 收集全部的性能指标 ************* #

apm = APM(pkgName='com.jd.reader', platform='iOS',  deviceId='00008020-000A6C220223002E',noLog=False, duration=20)

if __name__ == '__main__':

     apm.collectAll() # 会生成HTML报告

输出结果:

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

(3)使用API收集

后台启动服务

# solox version >= 2.1.5



macOS/Linux: nohup python3 -m solox &

Windows: start /min python3 -m solox &

通过api收集数据:

Android: http://{ip}:{port}/apm/collect?platform=Android&deviceid=ca6bd5a5&pkgname=com.bilibili.app.in&target=cpu

iOS: http://{ip}:{port}/apm/collect?platform=iOS&deviceid=00008020-000A6C22022300ccc&pkgname=com.bilibili.app.in&target=cpu



target in ['cpu','memory','network','fps','battery','gpu']

以获取安卓应用CPU和fps信息为例。

http://192.168.0.100:60000/apm/collect?platform=Android&deviceid=9TM9K23603021817&pkgname=com.jd.app.reader&target=cpu

http://192.168.0.100:60000/apm/collect?platform=Android&deviceid=9TM9K23603021817&pkgname=com.jd.app.reader&target=fps

返回结果:

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

以获取iOS应用CPU和fps信息为例。

http://192.168.0.100:60000/apm/collect?platform=iOS&deviceid=00008020-000A6C220223002E&pkgname=com.360buy.jdmobile&target=cpu

http://192.168.0.100:60000/apm/collect?platform=iOS&deviceid=00008020-000A6C220223002E&pkgname=com.360buy.jdmobile&target=fps

返回结果:

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控

SoloX:Android和iOS性能数据的实时采集工具,性能监控,solox,ios,android,移动应用性能监控文章来源地址https://www.toymoban.com/news/detail-724964.html

到了这里,关于SoloX:Android和iOS性能数据的实时采集工具的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【性能测试】性能数据采集工具nmon安装使用及报告参数含义详解

    目录 nmon nmon下载 解压安装 启动 数据采集配置 生成图形结果 nmon报告中的参数含义  资料获取方法 nmon是一种在AIX与各种Linux操作系统上广泛使用的监控与分析工具,它能在系统运行过程中实时地捕捉系统资源的使用情况,并且能输出结果到文件中,然后通过nmon_analyzer工具产

    2024年02月13日
    浏览(53)
  • 19基础设施监控工具 Zabbix 的基本用法,包括数据采集、报警

    Zabbix 是一款免费开源的网络监控工具,可以监控各种网络设备、服务器、应用程序等,并提供报警机制。它可以在 Windows、Linux、Unix 等平台上运行,支持多种数据库(MySQL、PostgreSQL、Oracle、SQLite),同时提供了 Web 界面进行管理和监控。 Zabbix 可以通过源码或二进制包安装。

    2024年02月06日
    浏览(37)
  • Flink CEP完全指南:捕获数据的灵魂,构建智慧监控与实时分析大师级工具

    Flink CEP(Complex Event Processing)是 Apache Flink 的一个库,用于实现复杂的事件流处理和模式匹配。它可以用来识别事件流中的复杂模式和序列,这对于需要在实时数据流中进行模式识别的应用场景非常有用,比如监控、异常检测、业务流程管理等。 在Flink CEP中,你可以定义复杂

    2024年02月03日
    浏览(57)
  • iOS实时监控与报警器

    在现代信息化社会中,即使我们不在电脑前面也能随时获取到最新的数据。而苹果公司提供的iOS推送通知功能为我们带来了一种全新的方式——通过手机接收实时监控和报警信息。 首先让我们了解一下iOS推送通知。它是一个强大且灵活可定制化程度高、适用于各类应用场景,

    2024年02月09日
    浏览(36)
  • ios查看帧率的软件_iOS实时流畅性监控

    iOS查看帧率的软件有: FPSMonitor:一款 iOS 平台上用于监测手机帧率的工具,可实时查看手机在某一时间段内的帧数变化及平均帧数。 刘雪松的监测帧率:通过 skinstatement 和 printscreen 截取屏幕,然后自动计算出屏幕的平均帧数、帧数变化、屏幕截图等。 苹果监控:用于实时监

    2024年02月16日
    浏览(42)
  • MySQL性能监控全掌握,快来get关键指标及采集方法!

    数据库中间件监控实战,MySQL中哪些指标比较关键以及如何采集这些指标了。帮助提早发现问题,提升数据库可用性。 监控哪类指标? 如何采集数据? 第10讲监控方法论如何落地? 这些就可以在MySQL中应用起来。MySQL是个服务,所以可借用Google四个黄金指标解决问题: 1.1 延

    2024年02月02日
    浏览(42)
  • Linux系统运行时参数命令(性能监控、测试)(3)网络IO性能监控

    通常用带宽、吞吐量、延时、PPS(Packet Per Second)等指标衡量网络性能 带宽 ,表示链路的最大传输速率,单位通常为b/s(比特/秒) 吞吐量 ,表示单位时间内成功传输的数据量,单位通常为b/s(比特/秒)或者B/s(字节/秒)。吞吐量受带宽限制,而吞吐量/带宽,也就是 网络

    2024年02月13日
    浏览(41)
  • (一)性能实时监控平台搭建(Grafana+Influxdb+Jmeter)

    主要介绍使用Docker安装Grafana+Influxdb结合Jmeter搭建可视化监控平台 使用Docker搭建influxdb数据库服务 创建influxdb容器 命令:docker run -d --name influxdb-dsp --restart=always -p 8086:8086 -e \\\"TZ=Asia/Shanghai\\\" influxdb:1.8 进入容器创建一个atp数据库,用于存储我们的压测数据 命令:docker exec -it my-i

    2023年04月08日
    浏览(34)
  • 性能监控工具-----ServerAgent

    ServerAgent 是一款安装在被测服务器端,与Jmeter集成的性能监控插件,支持查看CPU,memory,正确率,响应时间,I/O等的监控,是个不错的插件。 服务端 Linux服务端: https://github.com/undera/perfmon-agent 将安装包导入被测服务器,解压 unzip ServerAgent****.zip 。 进入解压文件目录,启动Serve

    2023年04月08日
    浏览(34)
  • linux 性能监控工具-nmon

    nmon是一款linux性能分析工具,查看的内容其实也可以用其他命令替代,但是nmon是图形化界面,看的更直观一些,集成了多项性能分析,使用起来也挺方便;还有一点也很重要,nmon是免费的性能工具,使用简单。就是— 免费 — 图形化 — 使用方便 – 功能多 可以到官网

    2023年04月14日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包