mac搭建appium环境,用代码模拟人工操作安卓手机:
一、安卓环境
1.安装jdk,配置相关环境
2.安装sdk,配置相关环境
1.肯定要安装的安卓模拟器,安装网易mumu模拟器
2.uc devtools元素定位
如果要测试app中内嵌了h5,h5中元素的定位就需要用到selenium了,那么我们怎么拿到这个元素的xpath呢?用到了uc devtools,官网地址:https://dev.ucweb.com/
下载后,直接安装之
具体怎么用呢?
.在模拟器或者真机上打开要定位元素的app中的h5页面
.打开uc devtools
.在首页就能看到这个h5页面,如下:
.点击上图中的 inspect,打开页面,如下:
.接下来就像在chrome的f12里一样,拿元素的xpath就可以了
3.chromedriver下载
如果app中内嵌了h5,那么元素定位就要用到chromedriver,下载地址:https://chromedriver.storage.googleapis.com/index.html
找到需要下载的版本,下载下来存到任意目录即可(但是要记得你放在哪了,之后会用到)
adb命令查看模拟器或真机内核版本
.打开终端
.输入指令:adb shell am start -a android.intent.action.VIEW -d https://liulanmi.com/labs/core.html
.查看手机上显示的内核版本
4.JDK
安卓系统是依赖于java环境的,所以要安装JDK,查看电脑是否安装环境和安装地址,可:/usr/libexec/java_home -V
5.android sdk安装 操控安卓应用(ps:用mac直接安装SDK,图形界面总是报错(空指针错误),停止运行,用android studio安装的,在配置文件把环境配置成android studio中sdk位置保存就可以了)
进入以下链接下载:https://www.androiddevtools.cn/#
下载完成后,进入对应的路径,选中android jdk包下的tools文件夹,按下command+option+c按键,复制当前路径;
然后进入终端,黏贴刚才的路径,将目录切换至tools目录下,输入./Android sdk,以打开Android SDK Manager进行安装
下一步把两项都勾选上:
等待安装完即可,这个过程我花了大致一个多小时。
配置安卓环境变量:在终端中输入 open .bash_profile,打开配置文件后在文件中添加以下2行:
export JAVA_HOME=$(/usr/libexec/java_home) export ANDROID_HOME=/usr/local/android-sdk-macosx
command + c 保存后,在终端中输入 source .bash_profile,保存本次配置。
5.安装appium
使用NPM安装Appium
安装nodejs,下载地址:https://nodejs.org/download/,安装完成后打开终端输入node -v,检查是否安装成功
安装npm,打开终端,输入命令:
sudo bash sudo curl -L https://npmjs.org/install.sh | sh
安装完成后,输入npm -v,检查是否安装成功
首先,npm默认的镜像地址已经被墙,我们需要将npm的下载地址更改为国内的地址。
打开终端(命令行),输入
npm config get registry
我们可以看到当前npm的镜像地址。
我们需要将这个地址替换为国内的地址,这里我们替换成淘宝的NPM镜像源:
npm config set registry=https://registry.npm.taobao.org/
敲击回车后,我们再次输入
npm config get registry
可以确认镜像源是否替换成功。
接下来我们就可以安装Appium了:
npm install -g appium
需要注意的是,最新版本的Appium在安装过程中,会去google拉取最新的chromedriver,因为google被墙的关系,你很可能无法下载。这里强烈建议各位学习如何FQ。
PS:安装完成后,想启动appium,就在终端输入:appium
看到如下界面:Welcome to Appium v1.6.3说明安装成功了
可以使用appium-doctor检查appium环境,在使用appium-doctor过程,出现了参数无法失败的报错,是因为:1.5 开始得另装 doctor。npm install -g appium-doctor 安装。
还有你写错了。应该是 appium-doctor。appium 后面没有空格,这样就可以检测了
红框中的没问题就可以了,两个报错是没安装xcode,不影响