Appium 定位元素

Appium 元素定位

通过id定位

driver.find_element_by_id("com.tencent.mm:id/cw").click()

通过name定位:

driver.find_element_by_name("转转二手交…").click()

通过单独的class定位(比较少用,在app中不太实际,因为同一个页面存在class的标签太多,往往无法准确定位到想要定位的元素)

driver.find_element_by_class_name("android.widget.TextView").click()

通过xpath定位

driver.find_element_by_xpath("//android.support.v7.widget.RecyclerView[@resource-id=‘com.tencent.mm:id/pj‘]/android.widget.RelativeLayout[@class=‘android.widget.RelativeLayout‘]").click()

xpath 定位比较灵活,且可以通过多属性组合,更精准定位到元素的位置。如下:

driver.find_element_by_xpath("//android.widget.FrameLayout[@index=‘0‘ and @resource-id=‘com.tencent.mm:id/xr‘ and @class=‘android.widget.FrameLayout‘ ]").click()

通过坐标定位(不建议使用这种方式,因为手机分辨率不一致,导致点击无效)

driver.tap([(96,346)])

  

通过xpath定位

原文地址:https://www.cnblogs.com/JcHome/p/10851086.html

时间: 2024-08-10 16:12:47

Appium 定位元素的相关文章

iOSNsPredicate Appium 定位元素

Appium使用WebDriverAgent之后,新增了一种定位方法iOSNsPredicate,总结了一下使用方法: MobileElement photo = driver.findElementByIosNsPredicate("name = 'head new'"); // 等于 MobileElement photo = driver.findElementByIosNsPredicate("name LIKE '*new'");  // 模糊匹配 Mob

初探appium之元素定位(1)

无论是selenium还是appium,元素定位都是我们开始实现自动化面临的第一个问题.selenium还好,我们可以在浏览器的调试页面进行元素定位还是蛮方便的.那么appium怎么做呢? 我看到很多资料,帖子都是说的appium自带的Inspector这个工具进行的元素定位.而笔者不知道是电脑还是什么的问题,这个工具是无法使用的.今天给大家说的是另一个工具. uiautomatorviewer 这个工具是在我们Android的SDK的tools的文件夹里面的.使用方法也很简单.这里我以安卓模拟

Appium学习路—Android定位元素与操作

一.常用识别元素的工具 uiautomator:Android SDK自带的一个工具,在tools目录下 monitor:Android SDK自带的一个工具,在tools目录下 Appium Inspector:Appium自带的一个功能,只有mac下可以使用该功能 下面是用monitor抓取到的页面元素 下面使用Appium Inspector定位的元素 二.元素定位   1.格式:find_element_by_定位方式(value) 通过id定位 (取resource-id的值): dr

【appium】根据xpath定位元素

1. 背景 本文尝试使用的试验对象是SDK自带的NotePad应用实例,假设已经有两个Notes分别是“note1”和“note2”添加到Notepad上面,我们要做的就是尝试用xpath的方法来定位“note2”这个ListView下面的TextView控件. 注意界面上有3个TextView类型的控件: 最上面的作为整个ListView的Title文本为“Notes”的TextView,Index为0 中间的文本为“note2”的TextView,Index也是0 最下面的文本为“note1

Appium定位App元素以及录制简单脚本

本次使用Appium自带的Inspector定位工具定位元素, 以及进行最最最简单脚本的录制: 等待一会儿,进入微信启动页: 点击刷新,进入微信首页: 此时,可以分别定位"通讯录"."发现"和"我"等元素: 下面开始进行录制简单的脚本, 模拟进入微信相册的第一条分享: 请注意这时候不要去管手机, 所有的操作都是在Appium上完成的: 这个脚本真是太太太简单了, 没有任何参考价值: 原文地址:https://www.cnblogs.com/yjl

appium+python自动化49-yaml管理定位元素

如何高效管理定位元素,这个是很有学问的问题,也是面试必问的[以下纯属个人观点,勿喷!]. 有的人用xml管理页面定位元素,这种逼格略高,但是小编认为学习成本大,贼麻烦. 有的人提到用excel管理页面定位元素,这种略显逼格,至少做到了数据分离,但是读取excel太慢,不够高效,还得在excel里面维护,忒麻烦. 有的人说把定位元素放数据库管理,这种除了装逼,没觉得有多高效,当然有小伙伴提到接口测试数据量比较大的时候,这种方法还可以. 有的人用pageobject模式,直接在page类写定位方法,

Appium移动端自动化:Appium-Desktp的使用以及定位元素方式总结

一.appium-desktop功能介绍 1.打开appium-desktop,点击start session 2.打开后,点击屏幕右上角的搜索按钮 3.然后会打开配置页面,在本地服务配置信息同上面写的代码链接配置.填入正确的信息后,建议先点击保存,再点击start Session. 4.成功启动模拟器中的qq程序.如下图.此时如果模拟器和appium-desktop中界面不同,可点击刷新按钮同步下,按钮的功能如下: 二.定位方式 点击定位元素按钮,点击左侧app界面中的登录定位元素后,就会出现

appium+真机+环境搭建+获取package和activity来验证是否搭建成功+appium自带的定位元素

提醒:安装好的环境不能随意改动配置和环境变量,如果改动需要重新启动appium server服务,要不然代码会一直报错,没有配置adb环境变量 首先,我们需要搭建环境,要准备以下安装包和一部手机: 所有需要的包给大家一个链接地址可供下载: 链接: https://pan.baidu.com/s/16daXwktbGGYf3a6EaB9B1Q 提取码: uakz 第一步:安装JDK 解压上面的jdk包,安装到需要的地方 配置环境变量: 验证是否安装和配置成功: cmd中输入java -versio

Appium 使用android_uiautomator定位元素时报错: The requested resource could not be found, or a request was received using an HTTP method that is not supported by the mapped resource

使用 android_uiautomator 定位元素时(现在用的还不太熟,对于这个方法还需要加深了解)报错: 报错信息:The requested resource could not be found, or a request was received using an HTTP method that is not supported by the mapped resource 因为用的不熟,所以也是上网查了好多方法,最后检查代码的时候发现,原来是拼写错误 我将new UiSelect