🔎简介
friebox - Android/iOS性能数据的实时采集工具。
我们致力于解决低效、繁琐的测试执行问题,我们的目标是在【Simple Test In friebox】
📦环境
- 安装 Python 3.10 + Download
- 更新adb包(选择性)https://developer.android.google.cn/studio/releases/platform-tools?hl=zh_cn
Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Mac版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip
Linux版本:https://dl.google.com/android/repository/platform-tools-latest-linux.zip
💡 如果Windows用户需要测试iOS,请先安装Itunes.
- Apple官网:https://www.apple.com.cn/itunes/
- Windows版本:https://apps.microsoft.com/store/detail/itunes/9PB2MZ1ZMB1S?hl=zh_CN&gl=cn&cid=appledotcom&rtc=1&activetab=pivot%3Aoverviewtab
- Mac版本:https://support.apple.com/kb/dl1977?locale=zh_CN
📥安装
pip install -U friebox # 默认
pip install -i https://mirrors.ustc.edu.cn/pypi/web/simple -U friebox # 镜像
💡 如果你的网络无法通过 [pip install -U friebox] 下载, 可以尝试使用镜像下载,但是可能不是最新版本.
🚀启动friebox
python -m friebox # 默认
python -m friebox --host={ip} --port={port} # 自定义
🏴使用python收集
from friebox.public.apm import APM
# friebox version >= 1.0.3
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
🏴使用API收集
后台启动服务
# friebox version >= 2.1.5
macOS/Linux: nohup python -m friebox &
Windows: start /min python -m friebox &
获取请求数据
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']
🔥功能
-
无需ROOT/越狱: Android设备无需ROOT,iOS设备无需越狱。高效解决Android & iOS性能测试分析难题。
-
数据完整性: 可提供FPS、Jank、CPU、GPU、Memory、Battery 、Network等性能参数,这些您都可以轻松获得。
-
美观的报告看板: 报告看板,您可以随时随地存储、可视化、编辑、管理和下载使用任何版本的friebox收集的所有测试数据。
-
好用的监控设置: 支持在监控过程中设置告警值、收集时长、访问其他PC机器的移动设备。
-
比对模式: 支持两台移动设备同时对比测试。 🌱2-devices: 使用两台不同的设备测试同一个app。 🌱2-apps: 使用两台配置相同的设备测试两个不同的app。
终端
- windows: PowerShell
- macOS:iTerm2 (https://iterm2.com/)
💕感谢
Metadata
Release files for friebox 1.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| friebox-1.0.3.tar.gz | 10.3 MB | Without provenance | Details for friebox-1.0.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| friebox-1.0.3-py3-none-any.whl | Python 3 | none | any | Details for friebox-1.0.3-py3-none-any.whl |
Total release size: 20.7 MB
Release files / friebox-1.0.3.tar.gz
| Download URL | friebox-1.0.3.tar.gz |
|---|---|
| Size | 10.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
041f21832a0a348fc3a1e734aae9ef6f4852da2079a4afa572a10402e0915ee4
|
|
BLAKE2b-256 checksum How to use checksums |
2b698cddc346d1045a870b2eb138991dbdd4ebc65422b5cb7dbe93ad22beb99e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Release files / friebox-1.0.3-py3-none-any.whl
| Download URL | friebox-1.0.3-py3-none-any.whl |
|---|---|
| Size | 10.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f670a1e07aedebe451dabbe353f05d548ae47042c5cbfd6f6bcbab3843f886d0
|
|
BLAKE2b-256 checksum How to use checksums |
08027d6398cd0b74485164d89ab9878475bd602f30ed97a8ae08a5dc4ff53bc6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.9.16
|
Security for friebox 1.0.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.