iOS Monkey智能平台——Fastbot

iOS智能monkey实战记录

目前市面上几款相对较好的 iOS 端稳定性 Monkey 测试工具,针对我司应用实战记录如下

工具名 实战记录
FastMonkey 仅支持 Xcode 8.x、9.x 和 10.1 版本放弃
SwiftMonkey 配置运行报错未能解决放弃
sjk_swiftmonkey 只能运行5分钟左右,且应用越来越卡放弃
Fastbot-iOS 成功运行且速度很快

Fastbot-iOS 的跨平台方案

Fastbot-iOS是字节跳动开源的自动化测试方案。Fastbot-iOS 端上架构采用轻量且必要的 WDA 私有接口、插桩 SDK(可选,扩展提供额外的插件能力)以及基于纯图像识别的技术方案。

源码下载地址:https://github.com/bytedance/Fastbot_iOS。

环境搭建

  1. osx 环境
  • mac机器安装xcode
  • 安装 cocoapods: 在终端中执行 sudo gem install cocoapods -v=1.8.1 , 并按提示输入设备登录密码。 若安装异常可参考文档方式安装
  1. 初始化项目
  • 在终端 cd 到当前项目目录下, 然后执行 cd Fastbot-iOS && pod install --repo-update
  • 双击使用 XCode 打开项目目录下 Fastbot-iOS/Fastbot-iOS.xcworkspace
  • 设置签名


    设置签名1.png

    设置签名2.png

    设置签名3.png
  • xcode需登录账号,且需与测试手机登录同一个apple id账号
  1. 信任设备&Runner
  • 连接手机到mac,mac点击如下图圈选区域选择所连接的手机,并在手机弹出的对话窗中选择信任


    信任设备.png
  • 执行 pingTestNetwork,待 FastbotRunner 安装成功后, 然后在手机 设置-通用-描述文件与设备管理-开发者应用中信任 FastbotRunner的证书。


    信任证书.png
  1. 执行 pingTestNetwork(此处可参照步骤3-2),此时在手机上点击 FastbotRunner-Runner App,弹出黑色界面后,等待 30s 左右,点击 Home键回到桌面,此时弹出是否打开网络权限的弹窗,选择无线网络或蜂窝网即可。直到 Xcode 运行 log 中出现 ping network success 则打开网络成功,如果不成功可尝试重复步骤4

运行测试

  1. 待测app安装到设备中,并且可正常运行
  2. 点击如下图一所示圈选区域弹出选择框,选择Edit Scheme,该页面编辑见下图二


    图一.png

    图二.png

在运行 Scheme 中设置测试参数,参数含义参照下表:

字段 说明 示例
BUNDLEID 被测试App的 Bundle ID com.apple.Pages
dataport 端口号 9797
duration 测试时长,单位分钟 240
launchenv 启动测试App的环境变量,一般为空,或者以 ':'分割的key=value形式 isAutoTestUI=1:channel=AutoTest
throttle 操作间隔,单位毫秒 300
  1. 执行测试,点击如下图圈选按钮,然后可在手机上观测到被测试App已经被拉起,并开始自动执行操作。


    执行测试.png
  1. 获取崩溃日志:点击待测设备设置-隐私-分析-分析数据,查看是否跟如下图所示关键字的崩溃日志


    获取日志.png
  1. 若需暂停测试可点击如下图所示按钮


    暂停测试.png

你可能感兴趣的:(iOS Monkey智能平台——Fastbot)