前言:在安装好appium环境和应用的基础上(https://www.cnblogs.com/miaoxiaochao/p/13375314.html),开始进行元素识别:
appium工作原理
操作步骤
1、先启动android虚拟机
2、打开appium桌面版,进行启动
3、打开pycharm,编写脚本,定义一个Desired Capabilities配置的字典,再把配置的字典做为请求参数发送给appium服务器
Desired Capabilities配置的字典:
from appium import webdriver des={ "automationName":"Selendroid", #自动化引擎 "platformName":"Android", #设备平台名称 ios、firefox "platformVersion":"8.0", #移动设备系统版本 "deviceName":"Huawei P30 Pro",#设备名称,安卓可随意填写,ios需通过instruments -s devices获取
"udid":"192.168.56.101:5555", #终端输入adb devices,可获取udid
"app":"apk 包的绝对路径",
"appPackage":"com.android.calculator2", #打开的app包名
"appActivity":".Setting", #安卓不需要此参数
"noReset":True,
"unicodeKeyboard":True,
"resetKeyboard":True,
"newCommandTimeout":60 #等待时间 }
driver =webdriver.Remote('http://0.0.0.0:4723/wd/hub',des) #发送到服务器
appium服务器初始化参数:https://www.cnblogs.com/miaoxiaochao/p/13430477.html
4、运行代码,能成功见到android虚拟机启动被测APP,点击appium桌面版的Start Inspector Session
输入Desired Capabilitie
点击Start Session,会自动启动android虚拟机的app,并能在Inspector工具上显示app界面,选择Selecte Elements,点击页面元素可以定位
5、基本元素定位api
1)id定位(取resource-id、id、name)
driver.find_element_by_id('')
2)class定位(取class)
driver.find_element_by_class_name('')
3)accessibilityId定位(取content-desc)
driver.find_element_by_accessbility_id('')
备注:其中name方式(取text)已不支持