安装Android SDK以及模拟器
由于Appium依赖于Android SDK,所以需要先安装SDK。
这里由于需要在Android模拟器上跑测试用例,所以同时需要安装Android 模拟器。
1.安装JDK
安装原因:Android是以Java语言为基础的,第2步安装的android SDK需要JDK支持。
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
下载之后一路next就好。
环境变量设置:设置JAVA_HOME为JDK安装目录。并把 “%JAVA_HOME%\bin;”加入到环境变量Path中。
验证是否安装成功: java -version
C:\Users\hello>java -version
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b18)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b18, mixed mode)
2.安装android SDK
安装原因:Appium 需要 Android SDK 支持,同时第3步需要通过SDK工具来下载Android版本
下载地址:http://tools.android-studio.org/index.php/sdk/
下载之后解压即可。
环境变量设置:设置ANDROID_HOME 系统变量为 Android SDK 安装路径,并把tools和platform-tools两个目录加入到系统的 Path路径里。
变量: ANDROID_HOME
值: D:\android-sdk_r23.0.2-windows\android-sdk-windows
设置: Path
值: %ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;
这里SDK准备好之后,我们可以在安装路径下看到SDK Manager.exe和 AVD Manager.exe 。
3. 下载Android 版本
安装原因:第4步新建Android 模拟器需要相应的Android 版本
在SDK安装路径下找到 SDK Manager.exe ,双击启动。
启动之后,找到Tools -> Options ,设置代理并且勾选中“Force https://.........”。不然下载不了。
点击Close关闭,可以看到Packages会自动更新,显示所有Android版本。选中我们想要的Android版本,比如我选中的是 Android 4.2.2,点击Install ,按照提示进行安装即可。
4. 新建Android 模拟器
安装原因:测试没有真机,需要在模拟器上跑测试用例脚本。
在SDK安装路径下找到 AVD Manager.exe ,双击启动。
启动之后,点击Create按钮,我的模拟器配置如下:
AVD Name:这个随便填,方便自己进行区分即可。
Device:选择设备型号
Target:由于我们只下载了 Android 4.2.2,所以这里就选择这个版本
新建之后选中模拟器并点击Start即可启动模拟器。这里启动会需要很长时间。
安装Appium服务端
1.安装nodejs
安装原因:第2步安装的appium是用nodejs写的,所以需要安装 nodejs。
下载地址: http://nodejs.org/download/
下载之后安装,一路next就好。
打开命令行cmd,验证是否安装成功:
C:\Users\hello>node -v
v6.2.0
安装路径下不仅可以看到有node.exe,还有npm。npm是node的包管理工具。
打开命令行工具cmd,验证npm是否可以使用:
C:\Users\hello>npm -v
3.8.9
2.安装Appium
可以在线安装,也可以下载包解压使用。本人首先采用的是在线安装,太慢没成功,之后采用的百度网盘下载安装。
1)在线安装。
使用npm安装appium。
npm install -g appium
下载过程会很慢。
2)直接下载Appium。
官方下载地址:https://bitbucket.org/appium/appium.app/downloads/
百度网盘下载地址:http://pan.baidu.com/s/1jGvAISu
下载之后一直next安装。我的装在 D:\appium\Appium
环境变量设置:将 D:\appium\Appium\node_modules\.bin 加入环境变量。
验证是否安装成功:appium-doctor
C:\Users\hello>appium-doctor
Running Android Checks
✔ ANDROID_HOME is set to "D:\android-sdk_r23.0.2-windows\android-sdk-windows"
✔ JAVA_HOME is set to "D:\java\jdk."
✔ ADB exists at D:\android-sdk_r23.0.2-windows\android-sdk-windows\platform-tools\adb.exe
✔ Android exists at D:\android-sdk_r23.0.2-windows\android-sdk-windows\tools\android.bat
✔ Emulator exists at D:\android-sdk_r23.0.2-windows\android-sdk-windows\tools\emulator.exe
✔ Android Checks were successful. ✔ All Checks were successful
搭建Appium执行客户端
1. 安装Python
安装原因:我们测试用例脚本打算用Python 编写,所以需要安装Python。
下载地址:https://www.python.org/downloads/
下载之后像正常的exe那样安装就可以。
环境变量设置:将Python安装路径以及安装路径下的Scripts路径加入Path,我的就是“D:\Python3;D:\Python3\Scripts;”。
验证是否安装成功:
C:\Users\hello>python -V
Python 3.4.4
2. 安装 Appium-Python-Client
安装原因:安装这个之后,我们才可以使用 appium 包来操作。
安装方法:打开命令工具cmd,输入 “pip install Appium-Python-Client”即可。
最后看到“Successfully installed Appium-Python-Client ......” 说明安装成功。
也可以打开python命令行,可以看到 import appium 没有报错,说明安装成功。
C:\Users\hello>python
Python 3.4. (xxxxxx)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import appium
>>>
开始测试
1. 通过AVD Manager.exe 启动Android 模拟器
2. 启动Appium
找到Appium安装路径,双击 Appium.exe 即可启动。
启动之后,点击安卓机器人按钮,设置Capabilities如下:
然后点击右上角的 三角形按钮启动 Node Server 。
可以看到类似如下log打印出来。其中 server args 就是我们上面配置的,比如 platformName等等。
> Starting Node Server
> info: Welcome to Appium v1.4.0 (REV xxxxxx)
> info: Appium REST http interface listener started on 127.0.0.1:
> info: [debug] Non-default server args: {"address":"127.0.0.1","logNoColors":true,"platformName":"Android","platformVersion":"","automationName":"Appium"}
> info: Console LogLevel: debug
3. 编写python测试用例脚本
打开eclipse,新建一个python项目,然后新建脚本如下:
from appium import webdriver desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '4.2.2'
desired_caps['deviceName'] = 'Android Emulator'
desired_caps['appPackage'] = 'com.android.contacts'
desired_caps['appActivity'] = 'com.android.contacts.activities.PeopleActivity' driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) driver.find_element_by_name("Create a new contact").click()
driver.find_element_by_name("Add account").click() textfields = driver.find_elements_by_class_name("android.widget.EditText")
textfields[0].send_keys("hhhhh@qq.com")
textfields[1].send_keys("") driver.find_element_by_name("Next").click() driver.quit()
这里就是打开通讯录,新建账户时输入邮箱和密码。
4. 运行脚本
右键点击脚本 -> Run As -> Python Run ,即可看到Android 模拟器开始跑测试脚本。跑的会很慢。