Appium元素定位(全网详细讲解)(二)

news2024/11/18 18:31:11

1.appium inspector(定位元素的工具)使用方法

详细介绍: 

 详细解释:

图标名称说明
1Show Element Handles是否显示元素句柄
2Select Elements选择元素定位
3Tap/Swipe By Coordinates按坐标点击/滑动
4Download Screenshot下载屏幕截图
5Press Back Button按下后退按钮
6Press Home Button按主页按钮
7Press App Switch Button按应用程序切换按钮
8Native App Mode本机应用程序模式
9Web/Hybrid App ModeWeb/混合应用程序模式
10Refresh Source & Screenshot刷新源和屏幕截图
11Search for element搜索元素
12Start Recording开始录制
13Quit Session & Close Inspector退出会话并关闭检查器

2.appium定位方法

(1)目标元素有 resource-id 且该 id 唯一 , 或排第一个
driver.find_element_by_id
(2)目标元素有 content-desc 属性
driver.find_element_by_accessibility_id
(3)以上条件均不具备 -XPATH
driver.find_element_by_xpath
备注: appium 寻找元素的形式与 selenium 基本相同, 都有单数和复数形式,
find_element_by_XXX 符合条件的 第一个元素 ,找不到抛出异常(所以如果自己所找的元素,匹配到了多个值,若该值显示在第一个的话,就可以用该表达式)
find_elements_by_XXX 符合条件的所有元素的列表,找不到返回空列表
同时也有全局查找和局部查找
通过 WebDriver 查找范围是整个界面树形结构
通过 WebElement 查找范围是该节点的子节点
Xpath appium 中的原理
Appium 中,我们没法使用 css ,因为 css web 专用的
web 不同,底层测试驱动并不识别 XPATH
Appium 负责解析 xpath 给底层测试驱动来识别
每个节点名对应元素的 class 属性
对于一些比较复杂的元素的定位,我们可以用它定位
driver.find_element_by_xpath('//ele1/ele2[@attr="a1"]')
xpath 表达式
(1)通过 ID 选择
//*[@resource-id="com.hpbr.bosszhipin:id/view_job_card"]
(2)通过 CLASS 选择
//android.view.ViewGroup
(3)通过其他属性选择
//*[@ 属性 =" 属性值 "]
(4)选择子元素
// [@ 属性 =" 属性值 "]/
(5)选择父元素
//*[@ 属性 =" 属性值 "]/..

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1900177.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Nginx-http_auth_basic_module使用

文章目录 前言一、ngx_http_auth_basic_module二、指令1.auth_basic1.auth_basic_user_file 示例生成密码文件配置basic认证浏览器验证 总结 前言 nginx可以通过HTTP Basic Authutication协议进行用户名和密码的认证。 一、ngx_http_auth_basic_module 生效阶段: …

科普文:如何进行有效沟通

概叙 你会沟通吗? 你知道正确的沟通应该怎么做吗? 在日常生活和工作中,不会沟通带来的困扰是否让你感同身受? 在工作中,你是否因表达不清让观点无法被同事理解和采纳,影响职业发展? 与上级交流是…

GuLi商城-商品服务-API-品牌管理-云存储开通与使用

这里学习下阿里云对象存储 地址:对象存储 OSS_云存储服务_企业数据管理_存储-阿里云 登录支付宝账号,找到了我以前开通的阿里云对象存储 熟悉下API 文档中心 简介_对象存储(OSS)-阿里云帮助中心 我们将用这种方式上传阿里云OSS

C++怎么解决不支持字符串枚举?

首先,有两种方法:使用命名空间和字符串常量与使用 enum class 和辅助函数。 表格直观展示 特性使用命名空间和字符串常量使用 enum class 和辅助函数类型安全性低 - 编译器无法检查字符串有效性,运行时发现错误高 - 编译期类型检查&#xf…

爆破片和安全阀

一、爆破片介绍 爆破片是一种用于安全释放压力的结构,通常应用于压力容器、管道和设备中,以防止由于压力过高而导致的灾难性故障。在压力超过设定值时,爆破片会破裂,从而迅速将过压泄放,保护设备和人员安全 爆破片通常…

Java——IO流(二)-(4/7):不同编码读取乱码的问题,转换流-InputStreamReader、OutputStreamWriter

目录 不同编码读取出现乱码的问题 转换流 InputStreamReader(字符输入转换流) 实例演示(1) OutputStreamWriter(字符输出转换流) 实例演示(2) 不同编码读取出现乱码的问题 如果代码编码和被读取的文本文件的编码是一致的,使用字符流读取文本文件时不会出现乱…

达梦数据库系列—22. DPC集群原理

目录 DPC原理 1、系统原理 2、元数据服务 3、数据存储 4、执行计划的生成 5、计算与存储分离 6、动态增删节点 7、分布式事务一致性 第一阶段 预提交 第二阶段 提交 8、RAFT 归档 9、自动故障处理 DPC原理 计划生成节点(SP):对外…

猫狗图像分类-划分数据集

📚博客主页:knighthood2001 ✨公众号:认知up吧 (目前正在带领大家一起提升认知,感兴趣可以来围观一下) 🎃知识星球:【认知up吧|成长|副业】介绍 ❤️如遇文章付费,可先看…

[FreeRTOS 基础知识] 互斥量 概念

文章目录 基础知识互斥量互斥量与信号量区别优先级反转优先级继承小结 基础知识 [FreeRTOS 基础知识] 信号量 概念 互斥量 互斥量(Mutex,全称:Mutual Exclusion),在计算机科学中,是一种用于防止多个进程同…

大学教师门诊预约小程序-计算机毕业设计源码73068

摘要 在当今数字化、信息化的浪潮中,大学校园的服务管理正朝着智能化、便捷化的方向迈进。为了优化大学教师的医疗体验,提升门诊预约的效率和便捷性,我们基于Spring Boot框架设计并实现了一款大学教师门诊预约小程序。该小程序不仅提供了传统…

压测工具---Ultron

压测工具:Ultron 类型:接口级和全链路 接口级 对于接口级别的压测我们可以进行 http接口压测、thrift压测、redis压测、kafka压测、DDMQ压测、MySQL压测等,选对对应的业务线、选择好压测执行的时间和轮数就可以执行压测操作了 全链路 对…

SAP PS学习笔记01 - PS概述,创建Project和WBS

本章开始学习PS(Project System)。 1,PS的概述 PS(Project System)是SAP企业资源规划系统中的一个关键模块,主要用于项目管理。 它提供了一个全面的框架来规划、控制和执行项目,涵盖了从项目启…

游戏AI的创造思路-技术基础-强化学习(1)

我们“强化”一下机器的“学习”,让机器变得更强~~~~ 目录 1. 强化学习的定义 2. 发展历史 3. 强化学习的基本概念和函数 3.1. 基本概念和函数 3.1.1. 基本概念和函数 3.1.2. Q函数 3.1.2.1. 定义与作用 3.1.2.2. 数学表示 3.1.2.3. 更新规则 3.1.2.4. 算…

3D Web轻量化平台HOOPS Web Platform的功能与应用分析

随着3D技术在多个行业的广泛应用,对于3D模型轻量化的需求日益增长。HOOPS Web Platform作为一个先进的3D模型轻量化平台,为开发人员提供了一整套工具来构建和部署基于Web的工程应用程序。本文将分析HOOPS Web Platform的核心功能和它在不同领域的应用情况…

ORB 特征点提取

FAST关键点 选取像素p,假设它的亮度为Ip; . 设置一个阈值T(比如Ip的20%); 以像素p为中心,选取半径为3的圆上的16个像素点; 假如选取的圆上,有连续的N个点的亮度大于IpT或小于…

CSS position属性之relative和absolute

目录 1 参考文章2 五个属性值3 position:static4 position:relative(相对)5 position:absolute(绝对) 1 参考文章 https://blog.csdn.net/lalala_dxf/article/details/123566909 https://blog.csdn.net/WangMinGirl/article/deta…

【C语言】字符函数和字符串函数的介绍和模拟实现

介绍处理字符和字符串的库函数的使用和注意事项 求字符串长度 strlen 长度不受限制的字符串函数 strcpy strcat strcmp 长度受限制的字符串函数介绍 strncpy strncat strncmp 0. 前言 C语言中对字符和字符串的处理很是频繁,但是C语言本身是没有字符串类型的&am…

实现沉浸式体验的秘诀:深入了解折幕投影技术!

在当今多媒体技术的浪潮中,投影技术已蜕变成为超越传统内容展示范畴的非凡工具,它深度融合了互动性与沉浸感,成为连接观众与虚拟世界的桥梁。折幕投影技术,作为这一领域的璀璨明珠,更是以其独特而神奇的手法&#xff0…

超过GPT-4V,国产开源多模态大模型来了!支持视频理解/超高分辨率图片理解/多轮对话...

扫码领取享50优惠!随时可用,先到先得! 大家好,开源多模态大模型真的是每天都在疯狂的涌现,今天分享一个国产大模型 InternLM-XComposer-2.5 中文名:浦语灵笔2.5 仅使用 7B LLM 后端就达到了 GPT-4V 级别的能…

第一百四十五节 Java数据类型教程 - Java字符串类型

Java数据类型教程 - Java字符串类型 零个或多个字符的序列称为字符串。 在Java程序中,字符串由java.lang.String类的对象表示。 String类是不可变的。 String对象的内容在创建后无法修改。 String类有两个伴随类,java.lang.StringBuilder和java.lang.…