appium之元素定位方法
做App UI自动化的时候,appium使用最频繁的应该就是定位元素了。
Appium常用的元素属性值:
resource-id:resource-id属性一般ID是唯一的,如果元素中有ID的话,优先考虑ID定位:
定位方法:
driver.find_element_by_id('resource-id属性值')
class_name:通过元素class属性值来定位元素:
定位方法:
driver.find_element_class_name('class_name属性值')
xpath:通过元素的xpath来进行定位:
定位方法:
driver.find_element_by_xpath("//*[@text='value']")
if 定位不到元素会出现NoSuchElementException,我们可以进行组合定位:
driver.find_element_by_xpath("//*[@text ='value' and @class = 'classvalue']”)
其中:
// # 全局范围
* # 增加一个筛选的标签条件
[] # 添加筛选的条件
@ #表示添加的条件是属性
text #通过文本来查找
value #属性的值
and # 可以进行多个条件的关联
通过以上的3个方法可以获取元素的进行,下面就可以对元素进行对应的操作。
Appium元素的操作:
driver.find_element_by_id('resource-id属性值').click
# 对应resource-id进行点击
driver.find_element_by_id('resource-id').clear
# 对应的resource-id进行清除
driver.find_element_by_class_name('android.widget.EditText').send_keys('value')
# 对应的class_name进行输入value
Appium获取元素的信息:
driver.find_element_by_id('resource-id').text
# 获取resource-id的文本
driver.find_element_by_id('resource-id').location
# 获取resource-id的位置,返回字典,x,y是元素左上角的坐标
driver.find_element_by_id('resource-id').size
# 获取resource-id元素的大小,返回字典,包含width,height
driver.get_attribute(attribute)
# attribute:可以获取resource-id,class,text,package,name
appium之元素定位方法的更多相关文章
- Appium Android 元素定位方法 原生+H5
APPIUM Android 定位方式 1.定位元素应用元素 1.1通过id定位元素 Android里面定位的id一般为resrouce-id: 代码可以这样写: WebElement eleme ...
- Appium+Python 自动化-appium常用元素定位方法
https://www.cnblogs.com/rabbit-testing/p/8042733.html 大牛 https://blog.csdn.net/kaka1121/article/deta ...
- 【APP自动化】Appium Android 元素定位方法 原生+H5
参考资料: http://blog.csdn.net/vivian_ljx/article/details/54410024
- Appium学习笔记4_元素定位方法
Appium之元素定位,如果对Android上如何使用工具获取页面元素有问题的,请转战到这:http://www.cnblogs.com/taoSir/p/4816382.html. 下面主要是针对自 ...
- Robotframework + Appium 之常用元素定位方法
任何自动化测试,其实手动测试也是一样的,元素定位(目标定位)是首要任务,这是最直接的测试对象呀! 好了,废话不多说,又到了元素定位啦,之前我们已经介绍过selenium及appium常用的定位方法,下 ...
- appium 元素定位方法汇总
以上图为例,要定位到右下角的 我的 ,并点击 # appium的webdriver提供了11种元素定位方法,在selenium的基础上扩展了三个,可以在pycharm里面输入driver.find_e ...
- 基于appium的常用元素定位方法
一.元素定位工具 app应用的元素使用的是控件定位,不同于web网页,web网页定位元素通常使用的是F12工具,那么在app当中我们则要借助其它的工具来辅助定位. 1.uiautomatorviewe ...
- Python+Appium自动化测试(6)-元素等待方法与重新封装元素定位方法
在appium自动化测试脚本运行的过程中,因为网络不稳定.测试机或模拟器卡顿等原因,有时候会出现页面元素加载超时元素定位失败的情况,但实际这又不是bug,只是元素加载较慢,这个时候我们就会使用元素等待 ...
- 初探appium之元素定位(1)
无论是selenium还是appium,元素定位都是我们开始实现自动化面临的第一个问题.selenium还好,我们可以在浏览器的调试页面进行元素定位还是蛮方便的.那么appium怎么做呢? 我看到很多 ...
- 不支持find_element_by_name元素定位方法,抛不支持find_element_by_name元素定位方法,会抛如下错误 org.openqa.selenium.InvalidSelectorException: Locator Strategy 'name' is not supported for this session的解决
appium1.5后不支持find_element_by_name元素定位方法,会抛如下错误 org.openqa.selenium.InvalidSelectorException: Locator ...
随机推荐
- Linux环境使用Docker安装MongoDb
系统环境: CentOS 7.6 64位(同样适用于Ubuntu) 安装步骤: 1.创建文件夹 /home/docker/mongo/config /home/docker/mongo/data 2. ...
- Vue路由跳转时定位到页面顶部
代码如下: router.afterEach((to, from, next) => { document.body.scrollTop = 0; document.documentElemen ...
- MySQL日期/时间函数
1.查询当前时间函数: select NOW(),LOCALTIME(),SYSDATE(),CURRENT_TIMESTAMP(); 但是now()与sysdate()有点差异的,一个语句中now( ...
- 实验: spring-boot 整合 fluent-mybatis 实验过程!!!!
1.参考: 简单整合,会报错误 https://segmentfault.com/a/1190000040467885?utm_source=sf-similar-article 利用maven编译, ...
- Spring可扩展的XML Schema机制 NamespaceHandlerSupport
对xml文件的解析 1.可自定义标签, 2.可以覆盖原有的注册方法, 包括但不限于bean 加载,注解
- 从redis中取出数据并转成java对象
1.//数据存入redis中 redisTemplate.opsForValue().set(loginame, JSON.toJSONString(users),1000,TimeUnit.SECO ...
- Sentinel 高可用流量管理框架
出处:https://www.oschina.net/p/sentinel?hmsr=aladdin1e1 Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流.流量 ...
- node中get和post接口
接口传参 使用ajax请求向服务器接口传参,按http协议的约定,每个请求都有三个部分: 请求行: 保存了请求方式,地址,可以以查询字符串的格式附加一部分数据. 请求头:它可以附加很多信息,其中con ...
- 第08组Beta冲刺(3/4)
队名 八组评分了吗 组长博客链接(2分) 组员1李昕晖(组长) 过去两天完成了哪些任务 文字/口头描述 了解各个小组的进度与难以攻破的地方,晚上安排开会,安排新的冲刺任务. 重新分配小组及个人任务. ...
- vscode python可以运行,无法debug
参考:https://blog.csdn.net/weixin_44646187/article/details/125810974 提示'cmd' 不是内部或外部命令,也不是可运行的程序 或批处理文 ...