本文是在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 Debug3.真机设备需要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,然后运行测试。
参考:https://testerhome.com/topics/5233