1.id定位

driver.find_element_by_id("这里是resource-id")

2.name定位 (新版本的appium 1.7 已经没有这个定位方法了)

driver.find_element_by_name("这里是text")

3.class定位

driver.find_element_by_class_name("class属性")

(注:一般一个页面上的class属性不唯一,元素不唯一的话定位会报错了)

4..accessibility_id定位

driver.find_element_by_accessibility_id(“content-desc的值”)

5.坐标定位

driver.tap([(374, 831), (654, 906)], 500)     500是点击时间  tap是模拟点击

6.Xpath定位

driver.find_element_by_xpath(“xpath”)

android_uiautomator定位方法

text文本定位: 定位元素文案为"Login"的按钮

dr.find_element_by_android_uiautomator('text(\"Login\")').click()

dr.find_element_by_android_uiautomator("new UiSelector().text(\"Login\")").click()   #第2种写法

精确定位

模糊定位

dr.find_element_by_android_uiautomator('textContains(\"Log\")').click()

dr.find_element_by_android_uiautomator("new UiSelector().textContains(\"Login\")").click()   #第2种写法

后记:

ios的 是  driver.find_element_by_ios_uiautomation()

后记:

这里 可以配合  做显示等待

https://www.cnblogs.com/kaibindirver/p/8401847.html

resource-id定位

dr.find_element_by_android_uiautomator("new UiSelector().resourceid(\"resource-id\")").click()

className定位

dr.find_element_by_android_uiautomator("new UiSelector().className(\"className\")").click()

className复数定位 (感觉这个方法没啥用啊?)

loc_calss="new UiSelector().className(\"className\")"

dr.find_element_by_android_uiautomator(loc_calss)[2].click()

组合定位

text+resourceid

dr.find_element_by_android_uiautomator('resourceid(\"resource-id\").text(\"Login\")').click()

这里的都可以用 password属性 如:  new UiSelector().password(\"false\")")在和上面一样组合或者单独用   -------  我猜的

后记:

使用这个定位方法记得在头部加参数

desired_caps = { 'automationName': 'Uiautomator'}

appium定位方法的更多相关文章

  1. Appium 定位方法例子(4)

    有朋友留言反应定位不到元素,没错,船长也为这个一直在头疼,我用的App是原生安卓+webService+h5类型的,定位虽然没问题,但是在进行操作的时候各种不通过……真的很头疼啊……我这里说的“操作” ...

  2. 3.appium定位方法

    1.使用id定位: driver.find_element_by_id('id的名称').click() 2.使用className定位: driver.find_element_by_class_n ...

  3. appium---uiautomator定位方法

    前面总结了7种定位方法,今天在介绍一种uiautomator方法,其实appium就是基于uiautomator框架实现的,让我们一起看下uiautomator有哪些定位方法可以使用 uiautoma ...

  4. Appium学习笔记4_元素定位方法

    Appium之元素定位,如果对Android上如何使用工具获取页面元素有问题的,请转战到这:http://www.cnblogs.com/taoSir/p/4816382.html. 下面主要是针对自 ...

  5. Python Appium 元素定位方法简单介绍

    Python  Appium  元素定位 常用的八种定位方法(与selenium通用) # id定位 driver.find_element_by_id() # name定位 driver.find_ ...

  6. Robotframework + Appium 之常用元素定位方法

    任何自动化测试,其实手动测试也是一样的,元素定位(目标定位)是首要任务,这是最直接的测试对象呀! 好了,废话不多说,又到了元素定位啦,之前我们已经介绍过selenium及appium常用的定位方法,下 ...

  7. appium 元素定位方法汇总

    以上图为例,要定位到右下角的 我的 ,并点击 # appium的webdriver提供了11种元素定位方法,在selenium的基础上扩展了三个,可以在pycharm里面输入driver.find_e ...

  8. 基于appium的常用元素定位方法

    一.元素定位工具 app应用的元素使用的是控件定位,不同于web网页,web网页定位元素通常使用的是F12工具,那么在app当中我们则要借助其它的工具来辅助定位. 1.uiautomatorviewe ...

  9. python+Appium自动化:各种元素定位方法

    name定位 driver.find_element_by_name('飞利浦净水').click() 测试结果报错:selenium.common.exceptions.InvalidSelecto ...

随机推荐

  1. Java——多线程面试问题

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  2. hdu 1013 过山车 匈牙利算法(代码+详细注释)

    过山车 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submis ...

  3. 玩转X-CTR100 l STM32F4 l BMP280气压计传感器

    我造轮子,你造车,创客一起造起来!塔克创新资讯[塔克社区 www.xtark.cn ][塔克博客 www.cnblogs.com/xtark/ ]      本文介绍X-CTR100控制器 扩展BMP ...

  4. Installing MIB in Ubuntu and Solving the Error “SNMP Cannot Find Module …”

    Has noticed an error after executing the command snmpwalk with the indication of MIB instead of OID: ...

  5. tunning-prime优化mysql建议

    #!/bin/sh       # set tabstop=8   ################################################################## ...

  6. HihoCoder - 1867: GCD (莫比乌斯容斥)

    Sample Input 6 1 6 2 5 3 4 Sample Output 10 You are given a {1, 2, ..., n}-permutation a[1], a[2], . ...

  7. streamsets 集成 rabbitmq 以及benthos stream 处理框架

    benthos 是一个stream 处理框架,streamsets 也是,但是两者可以通过不同的工具进行集成起来 一般我们可以使用http 服务,消息中间件(kafka.rabbitmq ...) 使 ...

  8. 用C#通过反射实现动态调用WebService 告别Web引用(转载)

    我们都知道,调用WebService可以在工程中对WebService地址进行WEB引用,但是这确实很不方便.我想能够利用配置文件灵活调用WebService.如何实现呢? 用C#通过反射实现动态调用 ...

  9. 读写XML文档时,去掉新增加节点的“空命名空间”(xmlns=””)

    在做对ReprotViewer编程时,想做一个用户可以更改显示/打印列的功能,大致看了下,只需要通过对rdlc文件中改变其<Hidden>节点值为false/true,即可实现对应某列的显 ...

  10. C语言面试题4

    第二部分:程序代码评价或者找错 1.下面的代码输出是什么,为什么?void foo(void){    unsigned int a = 6;    int b = -20;    (a+b > ...