03-MacOS上搭建Appium的iOS测试环境

简介: 03-MacOS上搭建Appium的iOS测试环境

本篇文章基于:MacOs-11.2.3 、Xcode -12.3 、appium-v1.20.2、appium-desktop-v1.20.2 ,是目前最新版本的appium

准备环境和文件

相关库安装

  • brew install libimobiledevice:用于连接 iOS 设备的开源工具,类似于 Android 的 ADB
  • brew install ideviceinstaller:获取设备udid、安装app、获取bundleid
  • brew install carthage:WebDriverAgent 使用的依赖管理工具
  • brew install ios-deploy:不依赖Xcode,进行安装和调试iOS程序
  • brew install node:安装node.js
  • brew install npm : 安装npm  
  • npm install -g cnpm --registry=https://registry.npm.taobao.org:安装cnpm,npm很慢且经常失败,推荐使用cnpm
  • cnpm install -g appium:安装appium

验证安装

  • cnpm install -g appium-doctor:安装 appium doctor
  • appium-doctor --ios:检查appium的iOS环境

在 iOS 设备上安装 WebDriverAgent

 1. 更新 WebDriverAgent依赖

  • 切换到appium-webdriveragent目录,执行sh ./Scripts/bootstrap.sh命令,如下所示
1. # Appium 桌面版本
2. cd /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-webdriveragent
3. sh ./Scripts/bootstrap.sh
4. 
5. # Appium 命令行版本
6. cd /usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent
7. sh ./Scripts/bootstrap.sh

 2. 使用 Xcode 打开 WebDriverAgent 项目

  • 点击 Finder→前往→前往文件夹…,输入以下路径,点击前往,双击文件夹下的 WebDriverAgent.xcodeproj 打开项目
1. # Appium 桌面版本
2. cd /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-webdriveragent
3. 
4. # Appium 命令行版本
5. cd /usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent

 3. 在 Xcode 中添加开发者账号

  • 点击上方菜单栏的 Xcode→Preferences→Accounts,点击左下角的 按钮,选择 add Apple ID,添加自己的 Apple ID 作为开发者账号

 4. 编译 WebDriverAgentLib

  • 勾选 Automatically manage signing,设置 Signning 的 Team 为上一步添加的个人开发者账号,点击右上角的编译按钮,编译成功上方会提示 Build  WebDriverAgentLib: Succeeded

 5. 编译 WebDriverAgentRunner

  • 修改 Bundle Identifiercom.XXXXXX.WebDriverAgentRunner,必须是没有人用过的

   

  • 勾选Automatically manage signing,设置 Signning 的Team为上一步添加的个人开发者账号,点击右上角的编译按钮,编译成功上方会提示 Build WebDriverAgentRunner: Succeeded

   

 6. 编译 IntegrationApp:

  • 同上面操作

   

 7. 将 WebDriverAgentRunner 安装到 iOS 设备

  • 在 Xcode 中,将 Target 切换为 WebDriverAgentRunner,目标设备选择已连接的 iOS 设备,点击菜单栏的 Product→Test

   

  • 说明:上一步操作后会提示 Test Failed,可以看到 iOS 设备上多了一个叫 WebDriverAgentRunner 的 app,在 iOS 设备上点击 WebDriverAgentRunner 图标启动时会有弹窗提示 不受信任的开发者
  • 解决:在 iOS 设备上,进入 设置→通用→设备管理 ,选择自己的 Apple ID 账号,点击信任 Apple ID
  • 重复 步骤7的操作,可以看到 WebDriverAgentRunner 自动启动

 8. 验证 WebDriverAgent 安装


相关文章
|
4月前
|
测试技术 API Python
Appium控件交互策略:优化自动化测试效率的关键方法
该文介绍了如何使用Selenium与APP进行交互,包括点击、输入和状态判断等操作。例如,通过element.click()点击控件,element.send_keys()输入文本,以及element.is_displayed()检查元素是否可见。还展示了如何获取元素属性,如resource-id、text和class,并提供了Python代码示例来定位并操作APP元素,如滑动条的显示、可点击性检测及点击滑动条中心位置。在编写测试脚本时,应注意元素定位和状态验证以确保测试稳定性。
85 1
|
1月前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
53 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
1月前
|
测试技术 开发工具 iOS开发
iOS自动化测试方案(三):WDA+iOS自动化测试解决方案
这篇文章是iOS自动化测试方案的第三部分,介绍了在没有MacOS系统条件下,如何使用WDA(WebDriverAgent)结合Python客户端库facebook-wda和tidevice工具,在Windows系统上实现iOS应用的自动化测试,包括环境准备、问题解决和扩展应用的详细步骤。
77 1
iOS自动化测试方案(三):WDA+iOS自动化测试解决方案
|
1月前
|
测试技术 数据安全/隐私保护 iOS开发
iOS自动化测试方案(四):保姆级搭建iOS自动化开发环境
iOS自动化测试方案的第四部分,涵盖了基础环境准备、iPhone虚拟机设置、MacOS虚拟机与iPhone真机的连接,以及扩展问题和代码示例,确保读者能够顺利完成环境搭建并进行iOS自动化测试。
69 0
iOS自动化测试方案(四):保姆级搭建iOS自动化开发环境
|
1月前
|
测试技术 虚拟化 iOS开发
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
这篇文章是iOS自动化测试方案的第二部分,详细介绍了在Xcode开发者工具中构建WebDriverAgent(WDA)应用到iPhone的全过程,包括环境准备、解决构建过程中可能遇到的错误,以及最终成功安装WDA到设备的方法。
90 0
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
|
1月前
|
测试技术 开发工具 虚拟化
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
这篇文章提供了一份保姆级的教程,指导如何在MacOS虚拟机上安装Xcode,包括环境准备、基础软件安装以及USB扩展插件的使用,以实现iOS自动化测试方案的第一步。
33 0
iOS自动化测试方案(一):MacOS虚拟机保姆级安装Xcode教程
|
1月前
|
测试技术 Android开发 iOS开发
Appium 是一个开源的自动化测试框架,它支持多种平台和多种编程语言
Appium是一款开源自动化测试框架,支持iOS和Android多平台及多种编程语言。通过WebDriver协议,开发者可编写自动化测试脚本。在iPhone上实现屏幕点击等操作需安装Appium及其依赖,启动服务器,并设置所需的测试环境参数。利用Python等语言编写测试脚本,模拟用户交互行为,最后运行测试脚本来验证应用功能。对于iPhone测试,需准备真实设备或Xcode模拟器。
63 1
|
28天前
|
测试技术 Swift iOS开发
探索iOS自动化测试:使用Swift编写UI测试
【8月更文挑战第31天】在软件开发的海洋中,自动化测试是保证船只不偏离航线的灯塔。本文将带领读者启航,深入探索iOS应用的自动化UI测试。我们将通过Swift语言,点亮代码的灯塔,照亮测试的道路。文章不仅会展示如何搭建测试环境,还会提供实用的代码示例,让理论知识在实践中生根发芽。无论你是新手还是有经验的开发者,这篇文章都将是你技能提升之旅的宝贵指南。
|
3月前
|
测试技术
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
Appium+python自动化(三十九)-Appium自动化测试框架综合实践 - 代码实现(超详解)
|
4月前
|
Android开发 数据安全/隐私保护 iOS开发
ios和安卓测试包发布网站http://fir.im的注册与常用功能
ios和安卓测试包发布网站http://fir.im的注册与常用功能
155 0
ios和安卓测试包发布网站http://fir.im的注册与常用功能