appium连接夜神模拟器操作app
前言:
appium调试手机软件:
- 真机调试:即手机通过数据线连接电脑的方式,局限性太大,一个型号就要买一个手机,emmmm...
- 模拟器:有很多模拟器软件,推荐夜神,可以在电脑上虚拟出化各种型号手机,极其方便
一、安装夜神模拟器
1.安装模拟器
1.下载安装最新的夜神模拟器:https://www.yeshen.com/
2.启动模拟器,基本操作:
- 鼠标左键:点击选择
- 鼠标右键:返回上一级
- 按压左键,可上下左右滑动
- 右下角小房子,可回到主界面
3.设置手机型号:
4.下载应用
2.开启开发者模式
第一步:点击桌面 工具 - 设置
第二步:点击 关于:
第三步:找到 版本号,连点5次即可开启开发者模式:
成功:
3.替换nox_adb.exe
用安卓sdk的platform-tools文件中的adb.exe替换夜神模拟器bin文件夹中的nox_adb.exe,确保两者版本一致:
4.模拟器连接和查看设备信息(以后经常会用到)
夜神模拟器,默认端口号是62001
打开cmd命令窗口,分别输入以下命令
adb connect 127.0.0.1:62001
adb devices -l
二、appium连接模拟器操作app
1.打开客户端
打开电脑上的appium客户端,我们使用默认配置都不修改,直接点击“Start Server”按钮启动
2.连接手机设备
- 真机调试:手机数据线连接上电脑 - 开启开发人员选项
- 模拟器:上一章中最后一步
3.打开app
输入必要参数,点击连接,以微信为例:
添加以下四项值,完后点击“Start Session”。
- platformName---设备平台,Android或IOS
- deviceName----设备名。按上边adb devices -l 查出的设备名modle填写即可
- appPackage----要启动的app的包名,是App开发者提供的名称。微信是"com.tencent.mm"
- appActivity----要启动的界面,是App提供的各种不同的功能。每个程序都有个MainActivity,就是打开程序时显示在屏幕的活动。微信启动界面是".ui.LauncherUI"
appPackage和appActivity获取:
首先在android手机或模拟器上打开App,输入下面的abd命令:
adb shell dumpsys window windows | findstr mFocusedApp
连接后出现app界面,可以通过appium界面操作手机app:
三、微信登陆代码演示
记得一定是提前安装好下面两个包的:
pip install Appium-Python-Client Selenium
Appium-Python-Client继承自Selenium所以使用方法和selenium是很类似的
from appium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC # appium服务监听地址 server='http://localhost:4723/wd/hub' # app启动参数 desired_caps={ "platformName": "Android", "deviceName": "OPPO_R11_Plus", "appPackage": "com.tencent.mm", "appActivity": ".ui.LauncherUI" } # 驱动 driver = webdriver.Remote(server,desired_caps) wait = WebDriverWait(driver,30) # 获取登录按钮 login_btn = wait.until(EC.presence_of_element_located((By.ID,"com.tencent.mm:id/drp"))) # 点击登录按钮 login_btn.click() # 获取手机号文本框 phone_text = wait.until(EC.presence_of_element_located((By.ID,"com.tencent.mm:id/ji"))) # 填写手机号文本框 phone_text.send_keys("123")