mac下安装搭建Appium环境主要需要以下程序:
1)node.js(过程中会安装:ruby、brew、npm)
2)Xcode (运行IOS系统)
3)JDK (安卓系统是依赖于java环境)
4)android JDK(运行安卓系统)
5)Appium
6)安装其他依赖()
7)appium-doctor
以下对各个程序的安装进行详解 :
1.node.js
Appium服务端运行时依赖node.js环境,因此需要优先安装node环境。在终端中执行命令: $brew install node
如果没有安装brew,建议先安装该程序,brew是MacOS上的包管理工具,对mac上管理各个应用非常有帮助,brew是ruby开发的,需要确认ruby是否已安装,默认下ruby是已经安装的。
1)确认ruby是否安装:ruby -v
2)brew 安装: /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
确认brew安装:brew -v
注意:
安装brew提示/usr/local/bin is not in your PATH或者安装node后提示node: command not found
解决方法:修改环境变量配置文件
在Linux操作系统下,配置环境变量是使用如下命令: vim /etc/profile
在OSX下,我们用如下命令打开环境变量配置文件:
open ~/.bash_profile
添加:export PATH=/usr/local/bin:$PATH
source ~/.bash_profile #更新配置后的环境变量
3)安装node: brew install node
确认node安装:node -v
如果不确定电脑上是否安装了node环境,也可以先在终端中输入试试:
4)npm安装:如果按照上述方法,使用brew安装node后,一般系统会默认安装npm,即node package manager,它是一款NodeJS包管理和分发工具,在终端中输入npm -v就可看到当前版本:
2.Xcode
安装Xcode有2种方式:
1)直接在App store中搜索xcode,下载安装。这种方式比较简单粗暴,推荐:
2)进入官方的网址进行下载,这个过程需要登录自己的Apple ID,登录之后根据自己电脑的OS版本选择安装即可
https://developer.apple.com/download/more/
安装完成后,在终端中输入以下命令来查看是否安装成功:
xcodebuild -version
我当时安装后,输入命令终端给了我这样的反馈信息:
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance
谷歌之后,发现是xcodebuild没有找到Xcode导致的,我们需要重定向一下Xcode文档的位置,在终端中执行以下命令:
$ sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer/
执行完之后再查看Xcode版本,就显示对应的版本信息了:
3.JDK
java需要JDK. http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
or install by brew: brew tap homebrew/cask-versions; brew cask install java8
查看JKD 版本及安装目录:/usr/libexec/java_home -V
如果使用python + appium,也要配置JDK吗,答案是一定的,因为安卓系统是依赖于java环境的。
4.android JDK
进入以下链接下载:https://www.androiddevtools.cn/#
下载完成后,进入对应的路径,选中android jdk包下的tools文件夹,按下command+option+c按键,复制当前路径;
然后进入终端,黏贴刚才的路径,将目录切换至tools目录下,输入./Android sdk,以打开Android SDK Manager进行安装
打开的管理界面如下,选中前3项进行安装就可以了:
下一步把两项都勾选上:
等待安装完即可,这个过程我花了大致一个多小时。
配置安卓环境变量:在终端中输入 open .bash_profile,打开配置文件后在文件中添加以下2行:
export JAVA_HOME=$(/usr/libexec/java_home)
export ANDROID_HOME=/usr/local/android-sdk-macosx
command + c 保存后,在终端中输入 source .bash_profile,保存本次配置。
5.Appium
首先对Appium当前的服务端版本进行一个介绍:
1. appium GUI版本,桌面形式,win上更新到了1.4.16(不支持录制),mac上更新到了1.5.x(支持录制),目前均不再维护,GUI版本跟appium版本一一对应。如需安装,进入官网对包进行下载后直接安装即可:https://bitbucket.org/appium/appium.app/downloads/
2. appium 命令行版本,不管是win还是mac,安装这种形式的就没有界面,安装方式都是npm -g install appium,默认会安装当前最新版本;
3. appium desktop版本,属于新的桌面形式的appium版本,有界面,可以配置各项参数,可以启动inspect查看手机界面元素;不管是win还是mac下目前都支持简单的录制操作,appium desktop的版本和appium的版本并不是一一对应,下载地址:https://github.com/appium/appium-desktop/releases/
上述1中的版本现在已经不支持维护了,综合考虑我使用了第3种appium desktop版本。
配置appium中的configuation(与配置文件.bash_profile中是一致的):
6.安装其他依赖
1、brew install libimobiledevice --HEAD //相当于 android 的 adb,是 Appium 底层用到的工具之一,用于获取 iOS 设备信息
安装libimobiledevice(libimobiledevice 是一个跨平台的软件库,支持 iPhone®, iPod Touch®, iPad® and Apple TV® 等设备的通讯协议。不依赖任何已有的私有库,不需要越狱。应用软件可以通过这个开发包轻松访问设备的文件系统、获取设备信息,备份和恢复设备,管理 SpringBoard 图标,管理已安装应用,获取通讯录、日程、备注和书签等信息,使用 libgpod 同步音乐和视频。)
libimobiledevice 命令使用:
5.1 获取 UDID
idevice_id -l
5.2 截屏并保存到当前目录
ideviceimagemounter ./DeveloperDiskImage.dmg ./DeveloperDiskImage.dmg.signature // 打开文件访问
idevicescreenshot -u f93f5ade2ab2838d051e9e3479bd4ef5666c3a78
5.3 重启设备
idevicediagnostics restart
5.4 安装APP
ideviceinstaller -i /Users/aaron/书香苏州_20150104.ipa
5.5 卸载APP
ideviceinstaller -U ideviceinstaller -U com.szsmk.bookofsuzhou
此处注意在Ubuntu上基于libimobiledevice4,需使用(小写u)ideviceinstaller -u com.test.app
5.6 获取APP列表及APP信息
ideviceinstaller -l
5.7 获取设备信息
ideviceinfo
2、npm install -g ios-deploy //查看设备应用
3、brew install carthage //类似于 java 的 maven,项目依赖管理,主要是 WebDriverAgent 使用
7.appium-doctor
在终端中输入:
npm install -g appium-doctor
验证appium环境是否已经搭建好,在终端中输入:appium-doctor
出现以下一行就说明必须配置的项都已经搭建完成了:
Diagnostic for necessary dependencies completed, no fix needed.