基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)

基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)

导读:WebDriverAgent 简介 :https://testerhome.com/topics/4904

一、WebDriverAgent 的安装和配置

  1. MacOS 上的 Appium 安装和环境配置,请参考:https://testerhome.com/topics/13144

  2. 在真实 iOS 设备上安装 WebDriverAgentRunner

    必要的软件:libimobiledevice 、ios-deploy

    brew install libimobiledevice --HEAD
    npm install -g ios-deploy
    

    参考 Appium 官方文档: https://github.com/appium/appium-xcuitest-driver/blob/master/docs/real-device-config.md

    可知在真机上使用 WebDriverAgent 共用三种配置方式:Basic (automatic) configuration 、Basic (manual) configuration、Full manual configuration 。

    这里使用第三种,Full manual configuration <全人为配置的方式>(可使用免费 Apple ID,无需开发者账号),具体流程如下:

    1. go to => /appium/node_modules/appium-xcuitest-driver/WebDriverAgent
    2. mkdir -P /Resources/WebDriverAgent.bundle
    3. sh ./Scripts/bootstrap.sh -d
    4. open WebDriverAgent.xcodeproj
    5. build WebDriverAgent project with sign
    

这里需要注意第五点⚠️build WebDriverAgent project with sign!

  • 配置 WebDriverAgentLib 签名,修改 Bundle Indentifier 为自定义,与 facebook 不冲突即可。

    基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第1张图片
    image
  • 配置 WebDriverAgentRunner 签名,修改 Bundle Indentifier 为自定义

    基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第2张图片
    image
    基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第3张图片
    image
  • 增加 WDA 依赖 RoutingHTTPServer.freamwork 框架

    基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第4张图片
    image

点击 Xcode 标题栏,选择 Product => Scheme => WebDriverAgentRunner

选择 Rroduct => Test,即可编译安装 WebDriverAgentRunner 至 iOS 设备。

最后在 iOS 设备上进入设置APP => 通用 => 设备管理 => 信任你的 Apple ID 安装的应用

二、元素定位

  1. 安装和配置 Macaca app-inspector

    # macaca-cli
    npm install macaca-cli -g
    
    # app-inspector
    npm install app-inspector -g
    

    配置 XCTestWD 签名

    1. go to => app-inspector/node_modules/xctestwd/XCTestWD
    2. open XCTestWD.xcodeproj
    3. build XCTestWD project with sign
    

    同理 build XCTestWD project with sign 要求在 Xcode 里配置 XCTestWD 项目的签名。

    基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第5张图片
    image
  1. 使用 app-inspector

    app-inspector -u

    udid 可通过 idevice_id -l 查看。

    基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第6张图片
    image

使用命令成功会自动打开浏览器,即可获取界面元素:

基于 Appium 的 iOS 真机 UI 自动化测试配置 (详)_第7张图片
image

本文完~

你可能感兴趣的:(基于 Appium 的 iOS 真机 UI 自动化测试配置 (详))