English | 中文
SoloX - Real-time collection tool for Android/iOS performance data.
We are committed to solving inefficient, cumbersome test execution, and our goal is Simple Test In SoloX!
1.Python:3.10+ (Python 3.6 ~ 3.9 Please download a version of solox lower than 2.5.4)
2.pip install -U solox
3.pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple -U solox (China)
Note: If Windows users need to test ios, install and start Itunes
python -m solox
python -m solox --host={ip} --port={port}
from solox.public.apm import APM
# solox version >= 2.1.2
apm = APM(pkgName='com.bilibili.app.in',deviceId='ca6bd5a5',platform='Android', surfaceview=True, noLog=True)
# apm = APM(pkgName='com.bilibili.app.in', platform='iOS') only supports one device
# surfaceview: False = gfxinfo (Developer - GPU rendering mode - adb shell dumpsys gfxinfo)
# noLog : False (Save test data to log file)
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
# solox version >= 2.1.5
macOS/Linux: nohup python3 -m solox &
Windows: start /min python3 -m solox &
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&pkgname=com.bilibili.app.in&target=cpu
target in ['cpu','memory','network','fps','battery','gpu']
- 2-devices: test the same app on two different phones
- 2-apps: test two different apps on two phones with the same configuration
notice: only supports android
- windows: PowerShell
- macOS:iTerm2 (https://iterm2.com/)