Appium超详细环境搭建for Mac
1、iOS 9 之前一直以 instruments 下的 UIAutomation为驱动底层技术(弊端由于 instruments 的限制,单台 mac 只能对应单台设备);
2、iOS 9.3 时代推出 XCUITest 工具,用以替代 UIAutomation;
3、iOS 10 时代苹果直接废弃了 UIAutomation、Facebook 推出 WebDriverAgent(实现的 server 能够支持单台 mac 对应多个设备);4、Appium 在iOS 9.3 后全面采用 WebDriverAgent 的方案。

其次,重中之重:版本很重要,我的是:xcode9.3 + node10.11.0 + appium1.7.0,如果根据以下配置仍然不能成功运行,那么99%是版本的问题
下面开始逐个安装
1、安装nodebrew install node
通过这种方法安装的node是最新版本,因为我本地需要有node 8.1.1版本,所以使用nvm进行安装
备注:nvm的安装和使用
2、下载Xcode 和 Command Line Tools:需要有个AppleID,并根据自己电脑OS版本下载所需版本

下载后直接安装即可,注意Xcode保持在application文件夹下只有一个唯一版本
3、下载安装JDK

下载完成后直接安装即可
4、安装Android SDK
很多资料都推荐使用brew安装,但是实践后发现SDK文件为空,所以使用Android studio来安装
如果打开Android studio报错,直接cancel到下一步即可;若使用default方式安装,也可以在configuration里重新下载相关tools


5、安装appium最新版本

这里不使用npm下载方式是因为下载过程较长,且容易报错
6、安装appium-doctornpm install -g appium-doctor
7、配置Android环境变量
在 ~/.bash_profile文件中添加path
export ANDROID_HOME=~/Library/Android/sdk/
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_171.jdk/Contents/Home #jdk安装路径
export PATH=~/bin:$PATH:/usr/local/bin:$ANDROID_HOME/platform-tools/:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
在appium的configurations里设置:

、安装其他依赖brew install libimobiledevice --HEADnpm install -g ios-deploybrew install carthage
libimobiledevice / ideviceinstaller 库:相当于 android 的 adb,是 Appium 底层用到的工具之一,用于获取 iOS 设备信息
ios-deploy:查看设备应用
carthage:类似于 java 的 maven,项目依赖管理,主要是 WebDriverAgent 使用
(1)首先进入WebDriverAgent所在文件目录下:
/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent(2)根目录下执行:
./Scripts/bootstrap.sh(3)打开
WebDriverAgent.xcodeproj工程文件(4)添加自己的account:Xcode -> Preferences -> account -> 左下角 +

(5)更改bundle id:这里的bundle id就相当于一个App的唯一识别号,更改的规则随意,只要确认不会与有重复即可;所有的targets都需要修改


10、验证是否环境已经安装成功了
(1)终端输入:appium-doctor
如果环境都已配置好,应该是文章最开始图片中的结果
(2)运行WebDriverAgentRunner

1:选择scheme为WebDriverAgentRunner -> 2:选择运行设备,模拟器和真机都可以 -> 3:选择要构建的方式 ->4:选择Test方式
的步骤验证是否能成功运行WebDriverAgentRunner
如果真机运行后弹出需要在设置中信任证书,
Verify the Developer App certificate for your account is trusted on your device. Open Settings on iPhone and navigate to General -> Device Management, then select your Developer App certificate to trust it.
按照步骤操作后,重新运行就可以了

成功运行结果图:

1、appium版本不支持xcode版本(需要调用XCUITest),重新下载可匹配的Xcode版本
Xcode9.3 + Appium1.6.4时,运行WebDriverAgentRunner报错
Early unexpected exit, operation never finished bootstrapping - no restart will be attempted

解决方法:更新Appium版本到1.7.0
2、appium无法调起webdriverrunner(webdriveragent更新),查看是否因为webdriveragent证书签名、依赖framework、serverURL抛出错误信息
安装依赖framework时报错:
Falling back to building from the source
A shell task (/usr/bin/xcrun xcodebuild -project /Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Carthage/Checkouts/CocoaAsyncSocket/CocoaAsyncSocket.xcodeproj CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES -list) failed with exit code 72:
xcrun: error: unable to find utility "xcodebuild", not a developer tool or in PATH
解决方法:选择Command Line Tools

Xcode -> Preferences -> Locations -> Command Line Tools
3、长时间测试,server中断,这个无法解决,appium自身问题
4、webdriveragent启动失败,status、inspector无法正常查看,查看版本
5、appium脚本启动失败,查看脚本中的配置
Appium超详细环境搭建for Mac的更多相关文章
- (转)超详细单机版搭建hadoop环境图文解析
超详细单机版搭建hadoop环境图文解析 安装过程: 一.安装Linux操作系统 二.在Ubuntu下创建hadoop用户组和用户 三.在Ubuntu下安装 ...
- 超详细动手搭建一个Vuepress站点及开启PWA与自动部署
超详细动手搭建一个Vuepress站点及开启PWA与自动部署 五一之前就想写一篇关于Vuepress的文章,结果朋友结婚就不了了之了. 记得最后一定要看注意事项! Vuepress介绍 官网:http ...
- OpenGL环境搭建Windows+Mac+Linux
OpenGL环境搭建Windows+Mac+Linux Mac平台下 下载列表:GLFWcmake 下载的GLFW解压缩 然后安装cmake, 安装好cmake之后打开 1.browse source ...
- Mac+Appium+Python+Pycharm环境搭建
为什么优先选择Mac做自动化测试? 1.既可以做iOS端的测试也可以进行Android端测试 2.Mac运行效率相对于Win要高很多,可以真正发挥appium的功能 以下是在Mac上完整搭建过程 一. ...
- Appium环境搭建(win/mac)
课程使用Windows+Android虚拟机, 建议使用Windows系统学习课程, 如使用Mac系统, 请另外准备一台Andorid手机 Windows系统Appium环境搭建 安装JDK并配置环境 ...
- (appium+python)UI自动化_01_自动化环境搭建【MAC版】
Appium简介 Appium是一个开源的.跨平台的测试框架,主要用来进行app UI自动化,适用于原生应用.混合应用和移动网页应用(H5页面).目前支持Python.JavaScript.Objec ...
- Appium环境搭建(MAC版)
一.环境搭建 (1)安装node.js brew install node (2)安装Xcode 测试iOS App需要.打开Finder,在Applications文件夹下,看是否有Xcode.ap ...
- Appium环境搭建(Mac)
为什么选择Mac做自动化测试? 既可以做iOS端的测试也可以进行Android端测试 Mac运行效率相对于Win要高很多,可以真正发挥appium的功能 环境依赖 Node.js Appium App ...
- Appium入门指南 - 环境搭建和Case编写
本文档将详细介绍如何搭建 Appium 的运行环境,以及如何编写一个简单的 UI 自动化测试用例.其中,也会穿插讲解一些 Appium 的基本知识.关于 Appium 的更多信息,大家可以查看官方文档 ...
随机推荐
- 个人第四次作业--Alpha项目测试
这个作业属于哪个课程 https://edu.cnblogs.com/campus/xnsy/GeographicInformationScience 这个作业要求在哪里 https://www.cn ...
- Shell使用技巧之逐行读取
重定向读取 #!/bin/bash while read line do echo $line done < /etc/passwd 管道读取 #!/bin/bash cat /etc/pass ...
- springboot中使用Caffeine本地缓存
Caffeine是使用Java8对Guava缓存的重写版本性能有很大提升 一 依赖 <dependency> <groupId>org.springframework.boot ...
- [白话解析] 带你一起梳理Word2vec相关概念
[白话解析] 带你一起梳理Word2vec相关概念 0x00 摘要 本文将尽量使用易懂的方式,尽可能不涉及数学公式,而是从整体的思路上来说,运用感性直觉的思考来帮大家梳理Word2vec相关概念. 0 ...
- Django面试集锦(1-50)
目录 1.Django ORM查询中select_related和prefetch_related的区别? 2.only与defer的用法? 3.Django ORM是什么? 4.Django创建项目 ...
- nginx的进程结构
nginx分为单进程和多进程,默认是多进程 进程架构: 父进程master process 子进程worker process和cache manager cache loader 高可用性 高可靠 ...
- Spring注入bean的方式
在Spring容器中为一个bean配置依赖注入有三种方式: · 使用属性的setter方法注入 这是最常用的方式: · 使用构造器注入: · 使用Filed注入(用于注解方式). 使用属性的se ...
- 【科创人独家】科界CTO林镇南:言必真,行必果,没有尽力而为,只有全力以赴
B2C-->B2B-->O2O-->B2G.从传统电商到电子商务,再到最火医美,最后转入国企,80末的林镇南成长路径有特点:行业跨度大.技能涉猎广.误以为"4点半下班&qu ...
- selenium窗口截图操作
selenium窗口截图操作 使用背景:在自动化测试过程中,可能遇到执行错误情况,那么怎么样及时捕获出错信息/界面? 可以使用 get_screenshot_as_file(self,filenam ...
- 【Bullet引擎】复杂碰撞体 —— btCompoundShape
说明 API文档:http://bulletphysics.org/Bullet/BulletFull/classbtCompoundShape.html btCompoundShape可用于创建不规 ...