文章目录
- APP自动化测试-1. Appium的安装与配置
- 前言
- 一、Appium的安装与配置
- windows安装
- 1. jdk安装
- 2. Android SDK安装
- 3. nodejs安装
- 4. appium安装
- 5. appium-desktop安装
- mac安装
- 1. jdk安装
- 2. Android SDK安装
- 3. nodejs安装
- 4. appium安装
- 5. appium-desktop安装
- 6. 安装appium client
- 7. 安装appium-doctor
- 二、Appium简单使用
- 1. 手机连接
- 2. 编写脚本
- 总结
前言
准备appium的环境,开始APP自动化测试的准备工作。
一、Appium的安装与配置 windows安装 1. jdk安装
jdk官网下载jdk安装,配置环境变量,安装完成后,cmd窗口java -version显示版本号即为安装成功,详细安装教程不再赘述,资料比较多(百度:jdk1.8 windows/mac安装与配置)
2. Android SDK安装下载Android sdk工具,下载地址:https://www.androiddevtools.cn/
sdk tools中选择windows包下载
下载完成后,解压,选择SDK Manager.exe运行
SDK Manager程序中,保持默认,点击install 17 packages
安装完成后,配置环境变量,ANDROID_HOME目录即解压的目录
path变量添加:%ANDROID_HOME%platform-tools和%ANDROID_HOME%tools,保存后确认
cmd窗口执行adb --version,显示版本号即为成功
nodejs官网下载windows安装包,直接默认安装即可,下载地址:https://nodejs.org/en/
安装完成后,cmd窗口执行node -v和npm -v显示版本号即为成功
cmd窗口直接执行npm install -g appium,安装完成后,cmd窗口执行 Appium -doctor,显示如下即为成功
github下载安装包,下载地址,选择稳定版本,下载对应系统的安装包即可
安装完成后,server可以正常启动,即为安装成功
mac安装 1. jdk安装-
1.java官网下载jdk1.8,下载jdk的mac安装包,下载地址
-
2.点击下载后的dmg安装包,打开后运行pkg安装包
-
3.保持默认,完成jdk安装
-
4.安装完成后,ternimal窗口输入java -version,显示java版本号,即为安装成功
- 1.下载android的mac工具包,下载地址:http://tools.android-studio.org/index.php/sdk
- 2.下载完成后,解压压缩包,重命名文件夹为android-sdk
- 3.移动文件夹至/usr/local下
- 4.进入/usr/local/android-sdk/目录下,执行命令:tools/android update sdk --no-ui,执行过程中有询问,直接输入y即可,执行完成后进行环境变量的配置(安装各版本的SDK时间比较长,耐心等待)
- 5.执行命令,vim/etc/profile,添加如下配置后保存退出,执行source /etc/profile生效配置
ANDROID_HOME=/usr/local/android-sdk export PATH=$PATH:$ANDROID_HOME/tools export PATH=$PATH:$ANDROID_HOME/platform-tools
- 6.执行adb version显示版本号即为配置成功
- 1.node官网下载pkg安装包,下载地址
- 2.下载完成后点击默认安装即可
- 3.默认安装完成后,执行npm -v和node -v显示版本号即为安装成功
直接使用npm命令安装即可
npm install -g cnpm --registey=https://registry.npm.taobao.org cnpm install -g appium
安装完成后,输入appium,显示成功启动即为安装成功
➜ ~ appium [Appium] Welcome to Appium v1.22.3 [Appium] Appium REST http interface listener started on 0.0.0.0:47235. appium-desktop安装
github下载安装包,下载地址,选择稳定版本,下载对应系统的安装包即可
安装完成后打开appium:
保持默认启动appium server,点击startServer,启动服务,显示如下,即为成功
如果不需要appium inspector,直接使用命令行安装appium即可,无需安装appium desktop
根据不同的脚本开发语言,开发不同的appium client
python:appium python client
java:appium java client
安装python版本的appium client
- 源码安装(不推荐)
下载appium client安装包,下载地址
下载完成后,解压压缩包:
unzip python-client-0.31.zip cd python-client-0.31 python setup.py install
- 命令安装(推荐)
直接使用pip进行安装
pip install appium-python-client
安装完成后,在py文件中可以成功导入,即为安装成功
7. 安装appium-doctor在jdk、android-sdk、appium、node都安装完成后,使用cnpm安装appium-doctor检查环境,安装命令:
cnpm install appium-doctor
appium-doctor安装完成后,运行appium-doctor,显示如下:
➜ ~ appium-doctor info AppiumDoctor Appium Doctor v.1.16.0 info AppiumDoctor ### Diagnostic for necessary dependencies starting ### info AppiumDoctor ✔ The Node.js binary was found at: /usr/local/bin/node info AppiumDoctor ✔ Node version is 16.16.0 WARN AppiumDoctor ✖ Error running xcrun simctl info AppiumDoctor ✔ Xcode Command Line Tools are installed in: /Library/Developer/CommandLineTools info AppiumDoctor ✔ DevToolsSecurity is enabled. info AppiumDoctor ✔ The Authorization DB is set up properly. WARN AppiumDoctor ✖ Carthage was NOT found! info AppiumDoctor ✔ HOME is set to: /Users/test info AppiumDoctor ✔ ANDROID_HOME is set to: /usr/local/android-sdk info AppiumDoctor ✔ JAVA_HOME is set to: /Library/Java/JavaVirtualMachines/jdk1.8.0_333.jdk/Contents/Home info AppiumDoctor Checking adb, android, emulator info AppiumDoctor 'adb' is in /usr/local/android-sdk/platform-tools/adb info AppiumDoctor 'android' is in /usr/local/android-sdk/tools/android info AppiumDoctor 'emulator' is in /usr/local/android-sdk/tools/emulator info AppiumDoctor ✔ adb, android, emulator exist: /usr/local/android-sdk info AppiumDoctor ✔ 'bin' subfolder exists under '/Library/Java/JavaVirtualMachines/jdk1.8.0_333.jdk/Contents/Home' info AppiumDoctor ### Diagnostic for necessary dependencies completed, 2 fixes needed. ### info AppiumDoctor info AppiumDoctor ### Diagnostic for optional dependencies starting ### WARN AppiumDoctor ✖ opencv4nodejs cannot be found. WARN AppiumDoctor ✖ ffmpeg cannot be found WARN AppiumDoctor ✖ mjpeg-consumer cannot be found. WARN AppiumDoctor ✖ set-simulator-location is not installed WARN AppiumDoctor ✖ idb and idb_companion are not installed WARN AppiumDoctor ✖ applesimutils cannot be found WARN AppiumDoctor ✖ ios-deploy cannot be found WARN AppiumDoctor ✖ bundletool.jar cannot be found WARN AppiumDoctor ✖ gst-launch-1.0 and/or gst-inspect-1.0 cannot be found info AppiumDoctor ### Diagnostic for optional dependencies completed, 9 fixes possible. ### info AppiumDoctor info AppiumDoctor ### Manual Fixes Needed ### info AppiumDoctor The configuration cannot be automatically fixed, please do the following first: WARN AppiumDoctor ➜ Manually install Xcode, and make sure 'xcode-select -p' command shows proper path like '/Applications/Xcode.app/Contents/Developer' WARN AppiumDoctor ➜ [For lower than Appium 1.20.0] Please install Carthage. Visit https://github.com/Carthage/Carthage#installing-carthage for more information. info AppiumDoctor info AppiumDoctor ### Optional Manual Fixes ### info AppiumDoctor The configuration can install optionally. Please do the following manually: WARN AppiumDoctor ➜ Why opencv4nodejs is needed and how to install it: https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/image-comparison.md WARN AppiumDoctor ➜ ffmpeg is needed to record screen features. Please read https://www.ffmpeg.org/ to install it WARN AppiumDoctor ➜ mjpeg-consumer module is required to use MJPEG-over-HTTP features. Please install it with 'npm i -g mjpeg-consumer'. WARN AppiumDoctor ➜ set-simulator-location is needed to set location for Simulator. Please read https://github.com/lyft/set-simulator-location to install it WARN AppiumDoctor ➜ Why idb is needed and how to install it: https://github.com/appium/appium-idb WARN AppiumDoctor ➜ Why applesimutils is needed and how to install it: http://appium.io/docs/en/drivers/ios-xcuitest/ WARN AppiumDoctor ➜ ios-deploy is used as a fallback command to install iOS applications to real device. Please read https://github.com/ios-control/ios-deploy/ to install it WARN AppiumDoctor ➜ bundletool.jar is used to handle Android App Bundle. Please read http://appium.io/docs/en/writing-running-appium/android/android-appbundle/ to install it WARN AppiumDoctor ➜ gst-launch-1.0 and gst-inspect-1.0 are used to stream the screen of the device under test. Please read https://appium.io/docs/en/writing-running-appium/android/android-screen-streaming/ to install them and for more details info AppiumDoctor info AppiumDoctor ### info AppiumDoctor info AppiumDoctor Bye! Run appium-doctor again when all manual fixes have been applied! info AppiumDoctor二、Appium简单使用 1. 手机连接
打开手机调试模式,插上数据线,打开usb调试模式,mac的terminal窗口执行命令,显示设备即为连接成功
➜ ~ adb devices List of devices attached b1f37e8e device
b1f37e8e就是devices ID
2. 编写脚本pycharm中新建测试脚本test_appium.py
from appium import webdriver
# 仅为示例,实际运行时需要根据设备实际情况填写
desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '9.0'
desired_caps['deviceName'] = 'b1f37e8e'
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = 'com.android.settings.Settings'
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
driver.quit()
脚本可以成功调起手机运行,环境基本就是ok的
总结
appium的环境配置还是有点麻烦的,配置环境的过程中,遇到错误慢慢来吧。



