Appium安卓测试环境搭建

所需环境:

        Appium是C/S模式的应用,Server端运行时会有端口暴露,默认是4723,Client端一般需要是python编写代码来操作,操作时调用Server端的接口服务。

Appium Server依赖环境:

  1.  Java (1.8 +)
  2.  Android sdk (Android8以上需要JDK8+)
  3.  Node (8+)

Appium Client依赖环境:

  1.    NodeJS (8+)
  2.    python (3.6+)

安装appium Server:

安装Appium Server 

npm install appium -g # -g代表全局安装

如果安装失败,执行以下命令后继续安装

npm cache clean --force

安装完成后在cmd中运行一下appium看看:

C:\Users\Tilyp>appium
[Appium] Welcome to Appium v1.18.1
[Appium] Appium REST http interface listener started on 0.0.0.0:4723

安装成功

安装Android sdk:

  安装Android Stuido

    我这里是通过Android Stuido来安装Android sdk网址如下:https://developer.android.google.cn/studio/

    安装完之后长这样(我还试了一下 Android开发,嗯哼哼!!!)

Appium安卓测试环境搭建_第1张图片

安装Android SDK

     点击菜单栏里的File->Settings,具体流程如下:

Appium安卓测试环境搭建_第2张图片

     进来之后点 Android SDK

Appium安卓测试环境搭建_第3张图片

安装Android SDK Tools

     把我勾选的你个都安装一下

Appium安卓测试环境搭建_第4张图片

安装需要等待一段时间,全部安装完这些,我们的Appium Server的安装算是完成了,但是还需要配置环境变量,主要就是Android SDK 和Android SDK Tools,

环境变量配置

   Android SDK的目录在 C:\Users\{用户名}\AppData\Local\Android\Sdk目录下:

   Android SDK Tools 目录包含在Android SDK中,分别在platform-tools目录和tools目录中,我们要用的adb命令就在platform-tools目录中,app界面解析工具uiautomatorviewer就在tools中

打开环境变量,将这两个路径加到Path中,

Appium安卓测试环境搭建_第5张图片

接着配置ANDROID_HOME,新建环境变量,配置如图:

Appium安卓测试环境搭建_第6张图片

配置ANDROID_SDK_HOME,新建环境变量,配置如图:

Appium安卓测试环境搭建_第7张图片

    打开终端cmd运行一下adb命令试试,如果可以运行则证明配置成功,如果不行,那就检查一下。

Appium Client 安装:

    我们这里用Python来做测试程序的开发语言,安装客户端命令如下:

python -m pip intall  appium-python-client 

    如果太慢,可以利用豆瓣,清华等源来加速

python -m pip install -i http://pypi.douban.com/simple/ --trusted-host=pypi.douban.com/simple appium-python-client

测试:

    使用Appium 打开QQ

    配置手机,我用的华为,华为要开启开发者模式,打开设置->关于手机->版本号,找到版本号,连续点它七下就开启了,

    设置USB调试 打开设置->系统和更新->开发人员选项->USB 调试 (打开它),

    将手机通过USB连接电脑,USB连接模式设置为“传文件”

    打开cmd,输入adb devices 开看是否连接上

C:\Users\Tiltp>adb devices
List of devices attached
TILYP18A10008327        device

   上图表示已连上,启动Appium,初次会让手机安装两个APP,正常安装就可以了,遇到不信任时选择信任,

   我们开始撸代码:

"""
@Author:   Tilyp
@Date:     2020/8/22
@Describe: 
"""
from appium import webdriver
import time
import os


# server 启动参数
desired_caps = {}
# 设备信息
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '10'
desired_caps['deviceName'] = 'TILYP18A10008327'
# app信息
desired_caps['appPackage'] = 'com.tencent.mobileqq'
desired_caps['appActivity'] = '.activity.SplashActivity'
# 声明驱动对象
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

   platformName是系统名称:Android和IOS(要大写)

   platformVersion是系统版本号,可以在关于手机里找到

   deviceName是手机设备名称, 可以通过adb devices找到

   appPackage 和 appActivity 是APK应用的包名和launcherActivity, 查找方式如下:

adb logcat| find "START"

   我这里以QQ为例,运行上述命令,然后在手机上打开QQ,观察上述命令的输出,

Appium安卓测试环境搭建_第8张图片

    找 ActivityTaskManager类型的日志输出,cmp的字符串中就是我们要找的数据,“/”前边的就是appPackage,“/” 后边的就是appActivity,我们上图中已经找好了,所以直接运行,你会发现,手机QQ竟然可以启动了,真乃其事耶!

欢迎加群唠嗑吹牛,我会不定期的卖弄风骚:526855734

你可能感兴趣的:(爬虫,python,Android,android,adb,python,appium)