比比一下appium的使用原理(源网络):
client端:用各类语言写的测试脚本(比如用例等,此处用red+rf进行书写,语言python)
server端:即appium,用于接收client端的请求,控制模拟器执行请求,并监听
模拟器:android模拟器(android studio,genymotion,mumu等)、真机
于是乎,基于appium的自动化环境即安装上述三部分的东西
需要的语言环境
java :下载jdk 1.8及以上,官网https://www.oracle.com/technetwork/java/javase/downloads/index.html
我安装的jdk路径:
/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
python :mac自带python2.7,可自行官网下载python3https://www.python.org/downloads/
Andoird studio安装(一定要测试使用安卓模拟器设备)
简单粗暴地下载了Android Studio,自带android sdk,直接有adb命令
android studio安装的路径:
/Users/han/Library/Android/sdk
adb命令、java jdk环境变量配置
终端命令打开配置路径文件:
open .bash_profile
在.bash_profile文件配置如下环境,并保存关闭:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
export ANDROID_HOME=/Users/han/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools/
export PATH=$[PATH:/usr/local/bin:/usr/local/sbin:${PATH]
export PATH=${PATH}:~/Users/han/Library/Android/sdk/platform-tools
终端输入保存路径配置命令,设置的环境变量生效:
source .bash_profile
继续输入:
java -version
android -h 或 adb devices
//踩坑:输入 java --version会报错
“Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.“原因是此命令用于查看1.7jdk版本,已不支持查看1.8jdk版本。
模拟器安装-genymotion\mumu
genymotion:搜索官网https://www.genymotion.com/注册账号选gaming,有提供免费版下载,直接安装;另需要下载虚拟机作为启动模拟器工具https://www.virtualbox.org/wiki/Downloads,直接next安装即可;
genymotion使用:打开genymotion,输入账号,选择需要的模拟器下载,下载完成启动,如下效果:
mumu:搜索相应官网直接安装
测试android studio连接外部模拟器:文档参考(连接mumu模拟器)
https://blog.csdn.net/ZY_FlyWay/article/details/83819830
adb命令连接模拟器
连接mumu:adb kill-server && adb server && adb shell
查看连接的设备 :adb devices
查看模拟器中的app列表: adb logcat | grep -i displayed
连接夜神模拟器:adb connect 127.0.0.1:62001
red+rf安装:编写自动化用例
python2.7版本安装:
robotframework安装:
使用终端命令,
python -m pip install robotframework
若提示pip不可用,可先下载安装pip命令环境:
sudo easy_install pip
安装常用库
request:pip install robotframework-requests
ssh:pip install robotframework-sshlibrary
database:pip install -U robotframework-databaselibrary
appiumablibrary(必须要):pip install robotframework-appiumlibrary
red安装:gitHub下载版本(此处下的最新版本)https://github.com/nokia/RED/releases/tag/0.9.0,zip文件解压可直接使用
打开red-preferences -robot framework- installed robotframeworks 添加robotframewok路径(亲测安装完成rf框架会自动添加路径):
//踩坑:还使用命令行安装了ride,然而mac对wxpython包只支持unicode版本,wxpython又对应python2.7,然而,本辣鸡mac已经将python默认路径修改成python3了...
安装wxpython时替换了lib文件导致很多module都没有,重装macOS吧(并没有彻底解决问题,对应重新安装module)...
python3版本安装
官网下载python3https://www.python.org/downloads/,apk文件安装,终端命令安装rf环境同python2,只不过pip换成pip3就行了;
此时需要手动添加python3路径,终端which python3查询python3路径添加到red中
关于appiumlibrary库:
需要自己手动添加进去,点击red.xml文件-libraries,添加库,找到python路径搜索appiumlibrary夹至init.py ;
提供一个参考路径:/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/AppiumLibrary/init.py
appium安装
有两种方法:
1.终端命令安装
2.安装dmg文件,dmg包含NodeJS,Appium Server, Appium-Inspector 等组件,没得appium-doctor,需通过命令行自行安装
以下提供第二种方法:
2.github下载appium地址:https://bitbucket.org/appium/appium.app/downloads/,直接安装可用
ps第一种方法:命令行重装系统需安装npm环境,提供参考文档https://www.cnblogs.com/xiaoxuetu/p/4109581.html
再ps 试过用命令行进行安装,还是挺方便的,不过命令行不熟悉的不好修改报错,建议安装dmg文件即可