App自动化元素定位技巧__根据 XPATH 定位
App元素定位技巧__根据 XPATH 定位
1、根据 XPATH 定位。
1.1、Xpath在appium中的原理:
在Appium中,我们没法使用css,因为css是 web 专用的,与web不同,底层测试驱动并不识别XPATH,Appium负责解析xpath给底层测试驱动来识别每个节点名对应元素的class属性。
对于一些比较复杂的元素的定位,我们可以用它定位:
driver.find_element_by_xpath('//ele1/ele2[@attr="a1"]')1.2、xpath定位表达式,例如:
driver.find_element_by_xpath('xxx')
driver.find_elements_by_xpath('xxx')1.3、appium寻找元素的形式与selenium基本相同,都有单数和复数形式。
find_element_by_XXX() # 符合条件的第一个元素,找不到抛出异常。
find_elements_by_XXX() # 符合条件的所有元素的列表,找不到返回空列表。1.4、同时也有全局查找和局部查找。
通过WebDriver # 查找范围是整个界面树形结构。
通过WebElement # 查找范围是该节点的子节点。
2、xpath 表达式
2.1、通过ID选择
//*[@resource-id="com.hpbr.bosszhipin:id/view_job_card"]
driver.find_element_by_xpath('//*[@resource-id="com.hpbr.bosszhipin:id/view_job_card"]')
2.2、通过CLASS选择
//android.view.ViewGroup
driver.find_element_by_xpath('//android.view.ViewGroup')2.3、通过其他属性选择
//*[@属性="属性值"] 等价于 //*[class="标签"]
//标签
//*[class="标签"]
driver.find_element_by_xpath('//*[@resource-id="com.hpbr.bosszhipin:id/et_search"]')
driver.find_element_by_xpath('//*[@resource-id="com.hpbr.bosszhipin:id/ly_menu"]/*[2]').click()2.4、选择子元素
//[@属性="属性值"]/
driver.find_element_by_xpath('//*[@resource-id="com.hpbr.bosszhipin:id/ly_menu"]/*[2]')2.5、选择父元素
//*[@属性="属性值"]/.
driver.find_element_by_xpath('//*[@resource-id="com.hpbr.bosszhipin:id/ly_menu"]/.')
App自动化元素定位技巧__根据 XPATH 定位相关推荐
- [Appium] App自动化-元素定位
[Appium] App自动化-元素定位及工具 一.元素定位工具简介 Web自动化是通过浏览器自带的F12键进行元素定位,但是App自动化支持三大定位工具(UIAutomatorView/Appium ...
- APP自动化--元素操作之九宫格解锁密码图案
APP自动化时,遇到九宫格不要慌.根据咱们长期的自动化经验先进行一波分析. 当有多种情况的时候,例如: 1. 九宫格是由9个元素组成.那很简单啦!可以直接定位到元素的位置,然后用模拟触屏类(Touch ...
- 如何快速定位BUG?BUG定位技巧及测试人员定位的N板斧
很多测试人员可能会说,我的职责就是找到bug,至于找原因并修复,那是开发的事情,关我什么事? 好,我的回答是,如果您只想做一个测试人员最基本最本分的事情,那么可以这么想.但是,如果您想要在测试甚至开发 ...
- App自动化元素定位不到?别慌,3大工具帮你解决
在日常的android app自动化测试工作当中,很多朋友在元素定位时,会遇到以下类似的报错: 然后会来问,这是啥情况? 一般情况下,都会送上以下亲切的关怀: 1)adb能识别到设备吗? 2)设备有被 ...
- App自动化元素查看工具
Appium是基于Selenium的,所以和Selenium代码定位元素的基本规则相同 find_element_by_XXX 方法,返回符合条件的第一个元素,找不到抛出异常 find_element ...
- 使用xpath定位元素
一.xpath的基本语法 xpath(query) :返回query表达式对应的所有节点的selector list. >>> response.xpath('//div[@clas ...
- App自动化02-元素定位、显示与隐式等待、常见控件交互方法
1.demo案例 selenium 版本建议 3.141.0(pip install selenium==3.141.0) appium-python-client 版本建议 1.2.0 import ...
- xpath定位元素方法_测试数十次,总结了APP元素定位的万能方法
定位不到元素时候,一定很头大,最近一直在跑自动化流程,经常因为各种原因定位不到元素,经过数十次的尝试,我发现尤其是H5页面,出现定位不到元素的可能性更大,也总结尝试发现了在H5里面,通过切换上下文后用 ...
- appium手机APP自动化定位元素
目录 1 什么事手机app自动化,作用和特点 2 自动化原理: 3 定位元素 根据ID 根据CLASS NAME 根据ACCESSIBILITY ID Xpath 1 什么事手机app自动化,作用和特 ...
最新文章
- C语言网络编程:listen函数详解
- Vmware将于2007年8月在杭州和南京举办虚拟化巡展
- 数据库:mysql 获取刚插入行id[转]
- 约束布局(ConstraintLayout)1.1.2 版本的新特性
- SCCM 2012 简体中文正式版 部署文档 01 环境说明
- 重学概率论的一点点理解(持续更新)
- [[UIScreen mainScreen] bounds] 返回的屏幕尺寸不对
- String转为byte[] ,byte[]转为String,byte[]与String的相互转换
- linux板级设备的,linux板级设备的初始化过程是怎样的?
- python property 与get/set方法详解
- 什么是 Power BI?
- 阿里云发送短信工具类
- python实现AES加密解密
- 为什么python代码运行不了_Python | 为什么优化代码?
- java 5分钟_java-时间格式化 整5分钟,整10分钟
- git 修改命令 VI
- LeetCode琅琊榜第九层-加油站问题(图表法)
- Win10 1809美化
- where 空集_MySQL where 条件的这个坑你碰到过没
- “财界奥斯卡”CGMA全球管理会计中国大奖榜单公布
热门文章
- 跳板机文件上传至其他服务器
- 关于数据一致性的思考
- Python - HTTP请求
- python--type,object,元类,__new__关系
- CAD二次开发--根据内部点识别最近外部边界范围即boundary命令代码实现(含源码)
- 张益唐喊你参加阿里数学大赛:奖金400多万,今年还有文科开放题
- vue跳转页面携带参数
- PHP语言的输出命令是,PHP echo、print、print_r、var_dump输出语句
- electron 使用shell.openExternal 打开系统浏览器报错
- 将Appsec添加到敏捷中:安全案例,邪恶用户案例和Abuse(r)案例