前言
官网文档(下载、装置、文档):https://sonic-cloud.gitee.io/…
用户社区(提 bug、需要):https://sonic-cloud.wiki/
Github:https://github.com/SonicCloud…
sib 介绍
sib 是以 gidevice 为底层实现的 iOS 调试工具,因为 go 语言个性,编译好的二进制文件能够间接运行,所以不须要额定配置 python 环境或者 go 环境,间接下载 3M 左右的包解压就能够应用啦!sonic 组织也在继续参加建设 gidevice。以后迭代了数月,达到了 1.1.2 版本,根底性能如下:
- 设施根底信息获取、设施监听
- App 装置卸载、启动终止
- 查看过程信息
- 启动 xctest 相干,如:启动 Wda、Fastbot_iOS
- 获取电池相干信息
- 重启关机
- 代理转发
- 解体信息收集
- 模仿定位与勾销(局部 App 不失效)
- 屏幕旋转监听
- 系统日志获取
- 性能采集(Doing)
- 截图(Doing)
以上性能皆跨平台,即 Windows、Mac、Linux 都能够应用。
UI 自动化的利用(Appium)
以 Java 为例:
先用 sib 启动 wda(须要指定端口能够参考官网文档的参数)
sib run wda
而后在脚本里配置 Driver
DesiredCapabilities desiredCapabilities = new DesiredCapabilities();
desiredCapabilities.setCapability(MobileCapabilityType.PLATFORM_NAME, Platform.IOS);
desiredCapabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, AutomationName.IOS_XCUI_TEST);
desiredCapabilities.setCapability(MobileCapabilityType.NEW_COMMAND_TIMEOUT, 3600);
desiredCapabilities.setCapability(IOSMobileCapabilityType.COMMAND_TIMEOUTS, 3600);
desiredCapabilities.setCapability(MobileCapabilityType.NO_RESET, true);
desiredCapabilities.setCapability(MobileCapabilityType.DEVICE_NAME,【设施名称,也能够通过 sib 获取】);
desiredCapabilities.setCapability(MobileCapabilityType.UDID, udId);
desiredCapabilities.setCapability("wdaConnectionTimeout", 60000);
desiredCapabilities.setCapability(IOSMobileCapabilityType.WEB_DRIVER_AGENT_URL, "http://127.0.0.1:8100");
desiredCapabilities.setCapability("useXctestrunFile", false);
desiredCapabilities.setCapability(IOSMobileCapabilityType.SHOW_IOS_LOG, false);
desiredCapabilities.setCapability(IOSMobileCapabilityType.SHOW_XCODE_LOG, false);
desiredCapabilities.setCapability("skipLogCapture", true);
desiredCapabilities.setCapability(IOSMobileCapabilityType.USE_PREBUILT_WDA, false);
new IOSDriver("http://localhost:4723/wd/hub", desiredCapabilities);
即可启动。
在 Fastbot 利用
sib run xctest -b bytedance.FastbotRunner.xxxxxxx.xctrunner -e BUNDLEID=com.xxxxxx.internalapp -e duration=1 -e throttle=500
留神,因为 wda 和 fastbot 局部底层是雷同,所以同时启动 wda 和 fastbot 会阻塞哦
获取 App 图标
加上 - i 参数即可获取 icon,格局为 base64
sib app list -i
前端渲染后成果如图
屏幕旋转监听
sib orientation
您会取得相似的输入
orientation: 1
结语
sib 还在继续更新中,正在开掘无人触碰的畛域,也欢送有能力的小伙伴参加建设 ~