本文是在 Mac OS X 环境下搭建基于 Appium 的 iOS 自动化测试环境,脚本语言为 java,如有疑问可以联系我。
安装 iOS 自动化测试框架的环境为 Mac OS X 10.10。本文安装 Appium 以 DMG 格式为例,命令行安装略显麻烦,喜欢折腾的同学可以去官网查找安装方法。

一、注意事项

1.模拟器或真机均需要将手机设置—开发者中的 Enable UI Automation 启用。
2.要使用模拟器安装应用运行,测试包注意 target,configruation 选择 debug。
模拟器打包可参考如下命令:

xcodebuild -workspace yourworkspace -scheme yourscheme -sdk iphonesimulator9.3 -configuration Debug
xcodebuild -project yourprojecte -target target -sdk iphonesimulator9.3 -configuration Debug

3.真机设备需要 developer 证书并且将测试机的 udid 加入到 pp(Provisioning Profile) 文件,configruation 为 debug。
4.appium 设置设备 uuid 和程序的路径(未安装 APP 或需要重新安装时),已安装 APP 设置程序的 BundleID 即可。
5.出现问题多利用搜索引擎,多逛论坛。
6.本文仅做参考,有错误的地方欢迎指正。

二、所需软件

◾MacOSX 上搭建 Appium-iOS 环境所需的软件
◾链接:http://pan.baidu.com/s/1ciI6tS 密码:bkrp
◾Mac OS X >= 10.7
◾XCode >= 4.6.3
◾Xcode command line tools
◾Homebrew
◾ideviceinstaller
◾JDK
◾Appium
◾Eclipse

三、安装步骤

◾安装 JDK 设置 JAVA 环境变量
推荐使用 JDK1.7+ 版本,并配置系统环境变量(以 JDK1.7.71 配置为例,也可参考其他配置方法)
打开 jdk 的 dmg 文件,双击安装,安装完成后打开终端,查看当前使用的 java

/usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home

终端输入 vi ~/.bash_profile(Mac 配置环境变量有多种方式请根据需要自行选择)进入编辑模式

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASS_PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/lib

保存并退出,然后生效环境变量

source ~/.bash_profile

查看当前设置的 JDK 信息

java -version 
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

◾安装 Xcode
打开 xcode 的 dmg 文件,复制 xcode.app 到 Applications 文件夹(推荐),然后等待其安装完成。

◾安装 Xcode Command Line Tools
Xcode 安装完成后启动终端,在终端输入 xcode-select --install,弹出如下界面:

点击安装等待其完成即可。

◾安装 Homebrew
终端输入命令:

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

出现如图提示敲回车键即可继续,接着根据提示输入登录密码即可。

安装完成后执行检查命令安装是否成功

brew -v
Homebrew 0.9.9 (git revision cc10; last commit 2016-06-14)
Homebrew/homebrew-core (git revision 405f; last commit 2016-06-15)

注意:如果还未运行过 xcode,可能会出现如下提示,先启动一下 xcode 再来安装 homebrew。

◾安装 Node
如不需要命令行启动 Appium 可跳过此步骤。
终端执行

brew install node
node -v
v6.2.1

◾安装 ideviceinstaller
终端执行

brew install ideviceinstaller
ideviceinstller -h
Usage: ideviceinstaller OPTIONS
Manage apps on iOS devices.

  -u, --udid UDID   Target specific device by its 40-digit device UDID.
  -l, --list-apps   List apps, possible options:
       -o list_user - list user apps only (this is the default)
       -o list_system   - list system apps only
       -o list_all  - list all types of apps
       -o xml       - print full output as xml plist
  -i, --install ARCHIVE Install app from package file specified by ARCHIVE.
                        ARCHIVE can also be a .ipcc file for carrier bundles.
  -U, --uninstall APPID Uninstall app specified by APPID.
  -g, --upgrade ARCHIVE Upgrade app from package file specified by ARCHIVE.
  -L, --list-archives   List archived applications, possible options:
       -o xml       - print full output as xml plist
  -a, --archive APPID   Archive app specified by APPID, possible options:
       -o uninstall - uninstall the package after making an archive
       -o app_only  - archive application data only
       -o docs_only - archive documents (user data) only
       -o copy=PATH - copy the app archive to directory PATH when done
       -o remove    - only valid when copy=PATH is used: remove after copy
  -r, --restore APPID   Restore archived app specified by APPID
  -R, --remove-archive APPID  Remove app archive specified by APPID
  -o, --options     Pass additional options to the specified command.
  -h, --help        prints usage information
  -d, --debug       enable communication debugging

◾安装 Appium
打开 Appium 的 dmg 包,复制 Appium.app 到 Applications 文件夹中,即完成安装。

◾Appium 设置
设置 Appium 环境变量,将 appium.js 和 appium-doctor.js 文件所在路径配置到 PATH

export PATH=/Applications/Appium.app/Contents/Resources/node_modules/appium/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

运行 appium 命令检查环境变量是否生效

appium.js
(node:393) fs: re-evaluating native module sources is not supported. If you are using the graceful-fs module, please update it to a more recent version.
info: Welcome to Appium v1.4.13 (REV c75d8adcb66a75818a542fe1891a34260c21f76a)
info: Appium REST http interface listener started on 0.0.0.0:4723
info: Console LogLevel: debug
appium-doctor.js
Running iOS Checks
✔ Xcode is installed at /Applications/Xcode.app/Contents/Developer
✔ Xcode Command Line Tools are installed.
✔ DevToolsSecurity is enabled.
✔ The Authorization DB is set up properly.
✔ Node binary found at /usr/local/bin/node
✔ iOS Checks were successful.

Running Android Checks
✖ ANDROID_HOME is not set
Appium-Doctor detected problems. Please fix and rerun Appium-Doctor.

启动 Appium 并打开 iOS 的设置页面,如使用模拟器请不要勾选 UDID。注意 App Path 路径的正确性以及设备的系统版本号的设置。

◾启动 Appium
设置完成后,点击 Launch 按钮,以启动 Appium Server

如启动时遇到该情况请重置 appium 设置。

◾iOS 模拟器
打开 Xcode 然后打开开发者工具,启动 iOS Simulator。然后你可以指定一个你喜欢的模拟器启动。

◾启动 Inspector
启动 Appium Server 后,连接好真机或模拟器,并确保 Appium 的参数设置正确(与设备保持一致),点击 Inspector 按钮启动 Inspector。此时 Appium Server 会自动安装 app 并启动被测 App 并通过 instruments 抓取页面元素展示到 Inspector 页面,就可以开始获得页面元素信息开始自动化脚本的编写工作了。

◾安装 Eclipse
下载 Eclipse for Mac 解压后执行运行。
安装必须的插件,然后导入 demo 工程 TestAppiumDemo.zip,然后运行测试。

ENJOY IT!


↙↙↙阅读原文可查看相关链接,并与作者交流