首先介绍两种定位元素的工具,appium自带的 Inspector 和 android SDK自带的 uiautomatorviewer
1、UIAutomator Viewer比较简单,在模拟器打开app后,打开它,选择

点击这个按钮,就会同步模拟器或真机界面

点击页面中的元素,在右下角会显示该元素的一些信息

2、Inspector(android)
使用inspector就比较麻烦了,先设置appium
①首先是android setting

第一次设置的时候 package和launch activity是没有选择项的可以为空,填入Application path
②general settings中勾选下面这两项

③启动appium 就会发现会自动安装apk,然后点击appium中的搜索按钮,弹出inspector window,点击refresh,刷新出同步页面,在右下角也会显示出元素信息

 
如果出现错误,记得查看appium 日志排查
 
 
元素定位方式:
①by_id
 

②by_class_name
 
③by_name
如果要定位的控件是有文字的,可以直接尝试by_name,或者如果上图中的text后面是有值的话 也可以用by_name
④by_link_text
如果是herf 链接标签的 可以直接尝试用link定位,但是只适用于webview,跟web自动化的是一致的
⑤by_xpath
如下图,定位活动按钮

FrameLayout/ListView/LinearLayout/GridView/LinearLayout[1] 这是xpath的绝对路径
xpath可以这样写
第一种,利用元素属性
//android.widget.TextView[contains(@text, '活动')]
第二种,基本就是看元素路径了,利用index
//android.widget.ListView[0]/android.widget.LinearLayout[0]/android.widget.GridView/android.widget.LinearLayout[0]/android.widget.TextView
一层层向下分析,如果出现相同class则根据index来定位,跟web中的xpath相同

Appium——元素定位的更多相关文章

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

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

  2. 4、通过uiautomatorviewer实现appium元素定位

    熟悉selenium自动化的小伙伴应该知道WebDriver 提供了八种元素定位方法: idnameclass nametag namelink textpartial link textxpathc ...

  3. appium元素定位总结

    appium元素定位方法总结 使用uiautomator定位 driver.find_element_by_android_uiautomator(uia_string) 根据resourceId属性 ...

  4. appium元素定位工具

      appium元素定位工具介绍 使用uiautomatorviewer定位工具 使用Appium Inspector定位工具 使用uiautomatorviewer定位工具 谷歌在Android S ...

  5. APP 自动化之appium元素定位(三)

    APP自动化测试关键环节--元素定位,以下我们来了解appium提供的元素定位方法! 1. id定位,id一个控件的唯一标识,由开发人员在项目中指定,如果一个元素有对应的resource-id,我们就 ...

  6. appium 元素定位方法汇总

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

  7. appium 元素定位工具

    两种元素定位工具: 1.uiautomatorviewer是android-sdk自带的一个元素定位工具,目录D:\androidsdk\androidsdk\tools\bin . 双击启动uiau ...

  8. appium 元素定位与操作:

    一.常用识别元素的工具   uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium I ...

  9. appium===元素定位

    一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Ins ...

随机推荐

  1. 在容器内执行go编译程序的坑

    如果你编译了一个go程序,让后把它放到容器里面.很多时候这个程序都会无法执行,大概的样子是: /tmp # ls pub sub /tmp # ./pub /bin/ash: pub: not fou ...

  2. [转载]使用RoboCopy 命令

    经常进行文件管理操作的朋友们,不满意于Windows系统内置的复制功能,因为它太龟速了.于是大家就使用FastCopy.TeraCopy之类的软件来加速复制,但是你是否知道Windows 7已经内置快 ...

  3. Linux系统编程_1_文件夹读取(实现简单ls命令)

    闲来无事.随便写写,实现简单的ls命令: | 1 #include <stdio.h> | 2 #include <stdlib.h> | 3 #include <dir ...

  4. shell脚本学习笔记 (正則表達式)

    正則表達式一般有三个部分组成,他们各自是:字符类,数量限定符,位置限定符. 规定一些特殊语法表示字符类.数 量限定符和位置关系,然后用这些特殊语法和普通字符一起表示一个模式,这就是正則表達式(Regu ...

  5. 常用组件介绍 ---- Layout_weight

      下面这些也可以算是组件 文本区 TextView 文本框 EditText layout  容器 view     千万不要把Layout_weight 与 Layout_width相混淆**** ...

  6. iOS_GET_网络请求

    同步的 get 请求 #pragma mark - 同步的 get 请求 - (IBAction)GETSynButtonDidClicked:(UIButton *)sender { // 1.网址 ...

  7. java代码实现输出指定以.java结尾的文件的绝对路径

    package 输出指定文件绝对路径; import java.io.File; /* * 需求:请大家把"E:\\JAVA语言"文件夹下全部的java结尾的文件的绝对路径给输出在 ...

  8. HP Vertica Analytics Platform 评測

    1.vertica概念 面向数据分析的数据仓库系统解决方式 2.vertica关键特性 Ø  标准的SQL接口:能够利用已有的BI.ETL.Hadoop/MapReduce和OLTP环境 Ø  高可用 ...

  9. Spring Data JPA 事务锁

    1.概述 在本快速教程中,我们将讨论在Spring Data JPA中为自定义查询方法和预定义存储库的CRUD方法启用事务锁, 我们还将查看不同的锁类型并设置事务锁超时. 2.锁类型 JPA定义了两种 ...

  10. Frege-基于JVM的类Haskell纯函数式编程语言

    Frege是一门受Haskell语言启示而设计的纯函数式编程语言.Frege程序会被编译为Java,并执行于JVM上.它与Haskell是如此的类似.以至于有人称它为JVM上的Haskell.取Fre ...