Appium Python与雷电模拟器自动化测试入门指南:附实用案例解析
一、介绍Appium
Appium 是一个开源的移动应用自动化测试框架,支持多种编程语言,可在 iOS 和 Android 平台上进行自动化测试。
二、环境搭建
本文介绍的是基于windows环境进行部署
1、安装jdk
Appium 需要 Java 8 以上的开发环境。可以自行在网上搜索安装并配置环境变量。
如下图,代表jdk已安装好。

2、安装android-sdk
访问https://www.androiddevtools.cn/(需要梯子,可以斯沃,无偿提供)
依次点击AndroidSDK工具>>SDK Tools>>会跳转到以下界面,然后选择你的系统下载就好,Windows建议选择.exe后缀那个

下载之后,双击SDK Manager.exe进行安装

只需要装这3个

完成安装之后,配置环境变量

再在path添加
%ANDROID_HOME%\tools
%ANDROID_HOME%\platform-tools

环境变量配置好之后,在cmd输入adb version,如下图,就代表配置好了

3、安装appium桌面版
访问https://github.com/appium/appium-desktop/releases/tag/v1.21.0

我安装的是1.21.0版本。安装包下载完成之后,我们直接点击安装,这儿需要注意一个问题,在安装的时候选择只给本人安装,而不要选择 All Users,否则后面可能你会因为权限的问题而导致APP的运行失败。
安装成功后,点击appium,此时APP会监听一个本地的端口,默认是 4723 端口,你可以自己修改成其他没有被占用的端口号。

点击Edit Configurations查看ANDROID_HOME和JAVA_HOME是否配置正确,不正确的话需要修改后重启。也可以直接重启电脑,重新打开appium,这样ANDROID_HOME和JAVA_HOME直接从系统环境变量读取。

4、安装appium客户端
执行pip命令:pip install Appium-Python-Client
三、案例-appium桌面连接手机定位元素
1、通过appium桌面版连接手机/模拟器
打开雷电模拟器。如果是连接手机,需要在设置-开发者选项,打开USB调试

在appium桌面版点击Start Server v1.21.0



如上图,填写platformName、deviceName、appPackage、appActivity。


如果devices有多个,可以通过adb -s deviceName shell dumpsys window | findstr "mCurrentFocus",其中deviceName替换成你的设备名称。
2、配置好之后点击Start Session

如下图,可以对雷电模拟器上的页面进行元素定位

点击刷新,左侧模拟器页面会同步页面

三、案例-通过python连接appium服务端,并对手机进行操作
直接上代码:
# coding: utf-8
from appium import webdriver
from appium.webdriver.common.appiumby import AppiumBy
desired_caps = {'platformName': 'Android',
'platformVersion': '9.0.0',
'deviceName': 'emulator-5554', #设备名来自adb devices
"appPackage": "com.android.launcher3",
"appActivity": "com.android.launcher3.Launcher",
"autoGrantPermissions": True}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps)
#打开微信APP
driver.find_element(by=AppiumBy.ACCESSIBILITY_ID,value='微信').click()
driver.implicitly_wait(15)
#点击注册
driver.find_element(AppiumBy.ID,'com.tencent.mm:id/mjy').click()
作者:一只干测试的兔子