Appium 定位方法例子

Posted 孟船长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Appium 定位方法例子相关的知识,希望对你有一定的参考价值。

有朋友留言反应定位不到元素,没错,船长也为这个一直在头疼,我用的App是原生安卓+webService+h5类型的,定位虽然没问题,但是在进行操作的时候各种不通过……真的很头疼啊……我这里说的“操作”是指例如:清空输入框、输入用户名之类的,但是定位是没问题的。今天先给大家看一个比较标准的App,用这种就没有任何问题,其实也是船长在偷懒,因为计算器的操作真的是太简单啦~

    我百度的“计算器apk”:

然后下载的小米计算器:

 

进行的操作是:12+1=

# coding: utf-8

from appium import webdriver
from time import sleep desired_caps = {\'platformName\': \'android\',
               \'deviceName\': \'127.0.0.1:62001\',
               \'platformVersion\': \'23\',
               \'appPackage\': \'com.miui.calculator\',
               \'appActivity\': \'com.miui.calculator.cal.CalculatorActivity\'}
driver = webdriver.Remote("http://127.0.0.1:4723/wd/hub", desired_caps) sleep(2)

# 操作:12+1=

# resource-id
driver.find_element_by_id("com.miui.calculator:id/btn_1").click()
# text
driver.find_element_by_name("2").click()
# content-desc
driver.find_element_by_accessibility_id("加").click()
# class【注:1的索引是6,7的索引是0】
driver.find_elements_by_class_name("android.widget.Button")[6].click()
# uiautomator
driver.find_element_by_android_uiautomator(\'new UiSelector().description("等于")\').click()

 

 

    我想给大家写一些实用性强的,因为网上搜到的全是用计算器做例子,原因就在这——定位和操作不复杂,写起来轻松加愉快…

 

    让船长再研究一下安卓原生和h5混合的App该怎么弄…

 

    还要感谢@小麦苹果大神的指点哈~我太笨,学起来太慢

 

微信公众号搜索“自动化测试实战”或扫描下方二维码添加关注~~~

以上是关于Appium 定位方法例子的主要内容,如果未能解决你的问题,请参考以下文章

Appium元素定位

六 APPIUM Android 定位方式

Appium iOS万能的定位方式--Predicate(iOSNsPredicate)

Appium 定位

python+appium自动化测试-元素定位

Appium+Python 自动化-appium常用元素定位方法