写点什么

免安装免配置环境的免费 ios 调试工具 sib 来啦

  • 2022-10-13
    北京
  • 本文字数:2003 字

    阅读完需:约 7 分钟

sib 是以 gidevice 为底层实现的 iOS 调试工具,因为 go 语言特性,编译好的二进制文件可以直接运行,所以不需要额外配置 python 环境或者 go 环境,直接下载 3M 左右的包解压就可以使用啦!sonic 组织也在持续参与建设 gidevice。当前迭代了数月,到达了 1.1.2 版本,基础功能如下:


设备基础信息获取、设备监听 App 安装卸载、启动终止查看进程信息启动 xctest 相关,如:启动 Wda、Fastbot_iOS 获取电池相关信息重启关机代理转发崩溃信息收集模拟定位与取消(部分 App 不生效)屏幕旋转监听系统日志获取性能采集(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 -eBUNDLEID=com.xxxxxx.internalapp -e duration=1 -e throttle=500


注意,因为 wda 和 fastbot 部分底层是相同,所以同时启动 wda 和 fastbot 会阻塞哦


获取 App 图标


加上-i 参数即可获取 icon,格式为 base64


sib app list -i


前端渲染后效果如图


[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7AiGV4OY-1665538915325)(upload://jL4jryh7L2XDHmbvoYCdAfnnw1f.png)]


App 的管理还有很多,例如安装、卸载、启动、强杀


sib app installsib app uninstallsib app launchsib app kill


屏幕旋转监听


sib orientation


您会获得类似的输出


orientation: 1


获取设备信息


sib devices -d -f


你会获得类似输出


{"deviceList": [{"deviceId": 1,"connectionSpeed": 0,"connectionType": "USB","locationId": 0,"productId": 4776,"serialNumber": "0000****-0016FE","status": "online","deviceDetail": {"generationName": "iPhone 13 Pro","deviceName": "iPhone","deviceColor": "1","deviceClass": "iPhone","productVersion": "15.4.1","productType": "iPhone14,2","productName": "iPhone OS","passwordProtected": true,"modelNumber": "","serialNumber": "","simStatus": "kCTSIMSupportSIMStatusReady","phoneNumber": "+86 ","cpuArchitecture": "arm64e","protocolVersion": "2","regionInfo": "CH/A","telephonyCapability": true,"timeZone": "Asia/Shanghai","uniqueDeviceID": "","wifiAddress": "","wirelessBoardSerialNumber": "","bluetoothAddress": "","buildVersion": ""}}]}


相关功能还有很多很多,这里就不全部放出来啦,推荐前往官方文档查看更多详细信息哦!


sib run wda -b your.wda.bundleIdsib run xctest -b your.wda.bundleIdsib app listsib app launchsib devices listensib app uninstallsib screenshootsib pssib crashsib locationsib oritationsib batterysib info...


结语


sib 还在持续更新中,正在挖掘无人触碰的领域,也欢迎有能力的小伙伴参与建设 ~


官网文档(下载、安装、文档):


https://sonic-cloud.gitee.io/#/SIB


用户社区(提 bug、需求):https://sonic-cloud.wiki/


点击下方链接免费领取:性能测试+接口测试+自动化测试+测试开发+测试用例+简历模板+测试文档

http://qrcode.testing-studio.com/f?from=infoQ&url=https://ceshiren.com/t/topic/22265

用户头像

社区:ceshiren.com 微信:ceshiren2021 2019-10-23 加入

微信公众号:霍格沃兹测试开发 提供性能测试、自动化测试、测试开发等资料,实时更新一线互联网大厂测试岗位内推需求,共享测试行业动态及资讯,更可零距离接触众多业内大佬。

评论

发布
暂无评论
免安装免配置环境的免费 ios 调试工具 sib 来啦_霍格沃兹测试开发学社_InfoQ写作社区