第一步

安装JDK,本机如果带有1.7及以上版本的,则可忽略此安装步骤。

百度下载JDK,并配置环境变量 vim ~/.bash_profile

检查是否安装成功 java -version

第二步

检查brew的版本,brew -v(brew是mac os上的软件包管理工具)

如果Mac不带brew工具,则可以访问下载地址,根据官网操作安装即可。

下载地址:https://brew.sh/index_zh-cn.html

第三步

检查是否安装Git,git --version

如果没有git,则可以通过刚才安装的brew进行安装 brew install git,Mac自带Git可以不用更新。

第四步

安装node服务,brew install node

检查是否安装成功 node -v

第五步

安装Mac-Android-SDK

下载地址:http://tools.android-studio.org/index.php/sdk/ 选择对应操作系统下载,解压到/usr/local/opt

配置Mac-Android-SDK的环境变量, vim ~/.bash_profile

双击/usr/local/opt/android-sdk-macosx/tools目录下的Android,安装Android插件

同Windows安装插件相同,安装一个任意版本Android,和最新的tools工具即可。

第六步

安装appium-doctor命令,检测以上五步是否都以安装配置成功 npm install -g appium-doctor (appium与doctor之间不要有空格)

执行appium-doctor命令如果全部打对勾则为配置成功

错误1:出现如下图错误

命令:xcode-select --install (通过命令安装xcode tools)

第七步

安装X-Code编译工具,百度或Appstore下载即可。(注:安装完成后,一定要打开Xcode,让其完整安装)

第八步

安装各种插件。(注:以下安装包多数需要在FanQiang情况下下载。)

1、brew install libimobiledevice or brew install --HEAD libimobiledevice

2、brew install ideviceinstaller

3、brew install carthage

4、npm install -g ios-deploy

错误1:安装时如果报如下图错误

是由于xcode的目录存在异常,通过命令直接指定一个我们正在使用的xcode就可以了。

命令:sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer(这里路径要写自己正在使用的xcode路径,默认是这个路径)

错误2:安装时如果报如下图错误

命令:sudo npm install -g ios-deploy --unsafe-perm=true(通过这个命令安装ios-deploy)

5、sudo gem install xcpretty

6、npm install -g appium-android-driver

7、npm install -g appium-ios-driver

8、npm install -g appium

安装如果失败可以尝试通过cnpm安装appium

通过npm命令安装cnpm

npm install -g cnpm --registry=https://registry.npm.taobao.org

通过cnpm安装appium

cnpm install -g appium --no-cache

9、npm install -g wd

第九步

安装WebDriverAgent

默认目录/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent

执行sudo ./Scripts/bootstrap.sh

第十步

配置WebDriverAgent。向IOS终端打驱动包。

用X-Code打开npm安装的appium下的WebDriverAgent,默认目录/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent,双击打开WebDriverAgent.xcodeproj

配置WebDriverAgentLib-General。

配置WebDriverAgentRunner-Build Settings,将红框中的两个字段配置成唯一字符串。

配置WebDriverAgentRunner-General。

向IOS手机打包,确保手机能够连接上电脑。

手机上出现下图则为安装成功。

第十一步

安装appium-desktop

下载地址:https://github.com/appium/appium-desktop/releases(下载最新版本)

安装成功后在/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent目录下

双击打开WebDriverAgent.xcodeproj,在执行一遍第十步(此步骤将为appium-desktop安装驱动,WebDriverAgentRunner-Build Settings中Product Bundle Identifier参数与ProductName参数设置与第十步相同。)

配置完成后,启动appium-desktop

出现自己手机画面则为环境配置成功

移动端自动化测试-Mac-IOS-Appium环境搭建的更多相关文章

  1. RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难

    消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...

  2. (干货分享)mac python+appium环境搭建

    因为mac本自带python2.x(不建议卸载,因为本本本身有很多依赖与此),所以装python3的过程极其坎坷,勉强装好后也总是各种报错.这次装appium环境,直接把原来的python3卸了,用h ...

  3. Appium python自动化测试系列之appium环境搭建(二)

    ​2.1 基础环境搭建 当我们学习新的一项技术开始基本都是从环境搭建开始,本书除了第一章节也是的,如果你连最基础的环境都没有那么我们也没必要去说太多,大概介绍一下: 1.因为appium是支持andr ...

  4. 自动化测试_移动端测试(一) ----- Appium环境搭建

    一. 安装node.js 因为Appium是使用nodejs实现的,所以node是解释器,首先需要确认安装好 官网下载node.js:https://nodejs.org/en/download/ 安 ...

  5. 基于Mac的Appium环境搭建(java)

    一.jdk安装 1.下载地址 http://www.oracle.com/technetwork/java/javase/downloads/index.html 2.安装 3.配置环境变量: ope ...

  6. Appium环境搭建(win/mac)

    课程使用Windows+Android虚拟机, 建议使用Windows系统学习课程, 如使用Mac系统, 请另外准备一台Andorid手机 Windows系统Appium环境搭建 安装JDK并配置环境 ...

  7. 3.移动端自动化测试-appium环境搭建(原理)

    appium自动化原理: 需要服务端(appium启动),手机端(adb连接设备),脚本端(pycharm)就可以进行 自己总结下: 手机和脚本连接:1.adb连接,2靠脚本导入驱动. 脚本和服务端连 ...

  8. Mac Appium环境搭建

    安装brew ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)" 安装java brew install ...

  9. Python+Appium自动化测试(1)-appium环境搭建

    用python+appium做appUI自动化测试,系统为Windows.首先是JDK与Android SDK的安装与环境变量的设置. 一,安装JDK,配置JDK环境变量 1,下载jdk jdk8官网 ...

  10. Mac OS下Appium环境搭建及Genymotion模拟器安装

    说明:本机Mac本上已经安装的有:Python3.JDK.Node.js. Selenium Appium环境搭建 Step1:安装Appium Python Client库 1,命令:pip ins ...

随机推荐

  1. P3273 [SCOI2011]棘手的操作

    吐槽 上午风浔凌julao问我的神题 操作又多又毒瘤又棘手... 然后bzoj题号正好是2333,2333333333 思路 貌似只有我是这么写的 线段树合并, 每个线段树存每个连通块的信息,维护点的 ...

  2. Unsupervised Image-to-Image Translation Networks --- Reading Writing

    Unsupervised Image-to-Image Translation Networks --- Reading Writing 2017.03.03 Motivations: most ex ...

  3. promise对象的使用

    ES6中的promise的出现给我们很好的解决了回调地狱的问题,在使用ES5的时候,在多层嵌套回调时,写完的代码层次过多,很难进行维护和二次开发,ES6认识到了这点问题, 现在promise的使用,完 ...

  4. 什么情况下用断言?assert

    可以再预计正常情况下不会到达的任何位置上放置断言,断言可以用于验证传递给私有方法的参数.不俺的参数过,断言不应该用于验证传递给公有方法的参数,因为不管是否启用了断言,公有方法都必须检查其参数.不过,既 ...

  5. Visual studio 离线安装

    VS2017在下载好安装程序安装的时候,会根据你选择的功能模块来下载所需要的安装程序,而这些安装程序的下载位置并不会让你选择,而是直接放在 C:\ProgramData\Microsoft\Visua ...

  6. Python open 对应的参数

  7. file类中,命令记录

    file的长度>>4096当前盘符总空间字节数>>>151200460800当前盘符的可用空间字节数>>>143769821184 long a = f ...

  8. Android主页Activity对多个Fragment实现不同的沉浸式标题(图片或者文字标题)

    提示:讲解的该例实现是 FragmentTabHost + Fragment 实现: 1.示例效果图: 2.场景需求: 如示例图所示,在首页实现轮播图的沉浸,而 “发现” 和“我的”页是标题的沉浸. ...

  9. Qt的Radio Button(单选按钮)

    1 在UI界面中加入控件 2 对QRadioButton控件进行分组 QRadioButton的分组有多重方法,如采用组合框.QWidge等,下面介绍采用QButtonGroup方法来实现分组,好处是 ...

  10. Java 8新特性探究(二)深入解析默认方法

    什么是默认方法,为什么要有默认方法 简单说,就是接口可以有实现方法,而且不需要实现类去实现其方法.只需在方法名前面加个default关键字即可. 为什么要有这个特性?首先,之前的接口是个双刃剑,好处是 ...