阅读须知

由于OS X系统最近才开始接触,所以有些东西也不是很清楚,这里只提供方法不提供原理,能解释清楚的我也会尽量解释。可能也有一些地方说的不严谨或有错的,还望大家指点一二。

实验环境

操作系统: OS X 10.12.4

appium版本: 1.6.3

ios版本: 10.0.2

Xcode版本: 8.3.3

几个要点:

  • 1.最好拥有开发者帐号(貌似也可以不需要,但是为了本例成功最好需要有,找公司的ios开发要就行)
  • 2.一台mac系统电脑(不建议黑苹果,因为可能会影响开发者帐号的使用)
  • 3.一台ios设备
  • 4.免费VPN,App Store可以搜索到,推荐一款吧,叫做FreeVpn Plus
  • 5.Xcode,可从App Store安装
  • 6.最好是比较稳定的无线/有线网络

环境搭建

本次环境搭建全部参考testerhome这篇文章,感谢大兄弟的无私奉献!!

环境搭建

声明: 以下环境都必须完全安装

  • 1.安装brew

brew据我个人理解是ruby的一个包管理的工具,类似于Python的pip和node.js的npm

在终端输入如下命令并回车:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

如果遇到xcode相关的报错,记得打开一下xcode,再执行这行命令,因为我是刚下载的xcode。

  • 2.安装libimobiledevice

这个库官方的说明文档也有指示需要安装,具体我也没看到怎么用。

同样在终端输入命令并回车:

brew install libimobiledevice --HEAD

  • 3.安装carthage

同上,也不知道是干啥的。

brew install carthage

  • 4.安装node.js

node下载地址

下载mac下的pkg文件一键安装就行。

  • 5.安装cnpm

cnpm可以讲讲,这工具是马云爸爸为了国内局域网用户做的一款替代npm的工具(关键字:墙),安装好了以后可以用cnpm代替npm

安装好node后,在终端输入命令

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

  • 6.安装ios-deploy

ios-deploy可以用来安装卸载ios应用

cnpm有个问题,就是安装的node_module会全部放在当前路径下。

所以我们使用cnpm的时候,需要切换到/usr/local/lib(node模块默认安装路径)

在终端输入:

```

cd /usr/local/lib

cnpm install -g ios-deploy

```

  • 7.安装xcpretty

gem install xcpretty

安装xcpretty,经常安装失败,没反应,但是大家耐心等待吧,如果时间较长的话,建议大家切换个目录重新安装。

  • 8.安装appium

其实可以下desktop的版本,但是我也试过,会有一些问题呢。个人建议使用命令行操作appium。

输入命令:

cnpm install -g @appium1.6.3

==注意== :下载途中很有可能遇到卡住的情况,是因为墙的缘故,所以我们可以连上vpn进行安装,我印象中1.6.3版本比较难以安装,但是稳定性算比较高,笔者安装过1.6.5和1.6.6版本。所以大家一定要耐心安装,记得随时切换vpn。

2个关键点: 一个是安装appium-automator2相关的apk,一个是selendorid相关jar的时候会比较卡,这时候可以疯狂切换vpn


注意事项: 以上内容都不要在root用户下安装,默认不是root用户。终端命令的每一行的最左侧会显示用户,不是root就行。若出现权限问题,进入root用户将文件权限更改下。然后退出root用户继续安装即可

chmod -R 777 pathForFile 使用此命令修改文件夹的权限。


下一篇: mac上搭建appium+IOS自动化测试环境(二)

mac上搭建appium+IOS自动化测试环境(一)的更多相关文章

  1. mac上搭建appium+IOS自动化测试环境(二)

    上一篇: mac上搭建appium+IOS自动化测试环境(一) 9.安装appium-xcuitest-driver依赖 进入WebDriverAgent安装目录,运行bootstrap 首先进入目录 ...

  2. 1、在MAC上搭建React Native开发环境

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  3. 在Mac上搭建React Native开发环境

    概述 前面我们介绍过在window环境下开发React Native项目,今天说说怎么在mac上搭建一个RN的开发环境. 配置mac开发环境 基本环境安装 1.先安装Homebrew:用于安装Node ...

  4. [转] 在Mac上搭建React Native开发环境

    原文链接: http://blog.csdn.net/xiangzhihong8/article/details/53914336 概述 前面我们介绍过在window环境下开发React Native ...

  5. MAC下搭建appium UI自动化环境

    参考资料: http://qa.blog.163.com/blog/static/190147002201510161119832/ http://blog.csdn.net/liuchunming0 ...

  6. mac上搭建appium环境过程以及遇到的问题

    Mac环境安装appium 一.Java环境 下载java sdk http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...

  7. 在MAC上搭建python数据分析开发环境

    最近工作转型到数据开发领域,想在本地搭建一个数据开发环境.自己有三年python开发经验,马上想到使用numpy.scipy.sklearn.pandas搭建一套数据开发环境. ubuntu的环境,百 ...

  8. 在Mac OSX上配置Appium+Android自动化测试环境

    前提准备 开始正文之前,你需要准备好一些基本条件: 1.安装好Mac OSX 操作系统的设备 2.能够访问中国局域网以外资源的方法(没有也行,但很痛苦) 3.已经安装好 homebrew 4.已经安装 ...

  9. 在Mac OSX 上配置Appium+Android自动化测试环境

    前提准备 开始正文之前,你需要准备好一些基本条件: 安装好Mac OSX 操作系统的设备 能够访问中国局域网以外资源的方法(没有也行,但很痛苦) 已经安装好 homebrew 已经安装好 Python ...

随机推荐

  1. PHP7.1 报错 Warning Illegal string offset

    报错如下: Warning: Illegal string offset '阿根廷' in F:\wnmp\www\test.php on line 24 Warning: Illegal strin ...

  2. android软键盘的显示和隐藏

    显示: InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); imm.toggle ...

  3. 【原创】源码角度分析Android的消息机制系列(二)——ThreadLocal的工作过程

    ι 版权声明:本文为博主原创文章,未经博主允许不得转载. 在上一篇文章中,我们已经提到了ThreadLocal,它并非线程,而是在线程中存储数据用的.数据存储以后,只能在指定的线程中获取到数据,对于其 ...

  4. python布尔类型

    布尔类型 python当中下面的值在作为布尔表达式时,会被解释器看作False: 1.None: 2.False: 3.任何为0的数字类型,如:0,0.0,0j: 4.任何空序列,如:'',(),[] ...

  5. 高通HAL层之bmp18x.cpp

    继续上一个链接内容所讲:http://www.cnblogs.com/linhaostudy/p/8430583.html 下面bmp18x sensor为例进行分析. BMP18x Sensor: ...

  6. 正确理解python的装饰器

    一直在用别人写的装饰器,从来没有对其原理进行深入的探究.今天趁有点闲着的时间,把装饰器的原理好好看了一遍,做一下整理. 一.装饰器的基本原理 装饰器就是一个可以接受调用也可以返回调用的调用.装饰器本身 ...

  7. Kafka Producer Consumer

    Producer API org.apache.kafka.clients.producer.KafkaProducer props.put("bootstrap.servers" ...

  8. json和xml的两者区别

    服务器端返回给客户端的数据一般都是JSON格式,JSON数据以键值的形式保存,数据之间以逗号分隔,{}表示对象,[]表示数组.JSON数据解析方案有四种,JSONKit,SBJson,TouchJso ...

  9. 洛谷 [P1118] IOI1994 数字三角形

    简单dfs 我们注意到,题目中的运算方式与杨辉三角极其相似,所以说本题实际上是一道加权的杨辉三角,搜索系数 #include <iostream> #include <cstdio& ...

  10. [dsu on tree]【学习笔记】

    十几天前看到zyf2000发过关于这个的题目的Blog, 今天终于去学习了一下 Codeforces原文链接 dsu on tree 简介 我也不清楚dsu是什么的英文缩写... 就像是树上的启发式合 ...