一、根据ID  包名可省略

  1、元素的resource id属性

  2、唯一标志该元素的值

  3、一般最优先根据它来定位

    driver.find_element_by_id('io.manong.developerdaily:id/btn_email')

    driver.find_elements_by_id('btn_email')      包名可以省略

  4、有时候并非唯一指定

二、根据class name  包名可省略

  1、class属性决定了界面元素的类型

  2、如果

    我们要查找的是某种类型的界面元素

    而且这种类型的界面元素在当前界面只有一个

    driver.find_element_by_class_name('android.widget.ImageView')

  3、唯一性少见,一般用于局部查找。利用上层元素找目标元素

三、根据ACCESSIBILITY ID  包名可省略

  1、content-desc属性是用来描述该元素的作用

  2、如果

    要查询的界面元素的content-desc属性 在当前界面中唯一

    driver.find_element_by_accessibility_id('heheh')

  3、一般开发者不愿意写

四、根据Xpath

  1、定位比较复杂的元素

  2、相对不成熟,很多时候正确的语法也无法定位到元素

五、tap 方法    坐标精准定位元素,一般不使用

  1、click方法类似,都是点击界面

  2、tap针对坐标

  3、难以用通常的方法定位元素时使用

  tap([(x1,y1),(x2,y2),(x3,y3),(x4,y4),(x5,y5)],duration)列表中最多可以放5个元祖,duration长按屏幕的时间,单位为毫秒

六、swipe 滑动

  1、driver.swipe(x1,y1,x2,y2,duration) duration长按屏幕的时间,单位为毫秒,时间太短,滑动时会有惯性

  2、直接查看,估算操作坐标

  3、先获取元素坐标,在分析操作坐标(更健壮)

  location = ele.location  左上角坐标(dict:有x,y)

  size1 = ele.size 宽、高(dict:有width、height)

七、操作不可见元素:

  1、先滑动到其可见

  2、再操作该元素

  3、获取全屏幕尺寸

  screenSize = driver.get_window_size()

  screenW = screenSize ['width']

  screenH = screenSize ['height']

八、通知栏

  1、点开通知栏

  driver.open_notifications()

  2、查看通知

  3、关闭通知栏、返回应用

    A、通过活动屏幕实现

    B、通过按下返回键

    driver.keyEvent(4) 返回键的keycode是4

Appium元素选择 滑动 通知栏的更多相关文章

  1. Python+Appium自动化测试(10)-TouchAction类与MultiAction类(控件元素的滑动、拖动,九宫格解锁,手势操作等)

    滑动屏幕方法swipe一般用于对页面进行上下左右滑动操作,但自动化过程中还会遇到其他情况,如对控件元素进行滑动.拖拽操作,九宫格解锁,手势操作,地图的放大与缩小等.这些需要针对控件元素的滑动操作,或者 ...

  2. Appium之选择/操作元素

    Appium是如何选择.操作元素的呢? appium自动化  ------  选择界面 元素 操作元素  ------- ① 点击 ② 输入字符 ③ 拖拽 ④ 获取页面元素的各种属性 根据appium ...

  3. Appium(九):Appium API(三) 滑动和拖拽、高级手势、手机操作

    1. 滑动和拖拽 我们在做自动化测试的时候,有些按钮是需要滑动几次屏幕后才会出现,此时,我们需要使用代码来模拟手指的滑动,也就是接下来要学的滑动和拖拽了. 1.1 swipe滑动事件 从一个坐标位置滑 ...

  4. appium元素定位总结

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

  5. appium元素识别方式实战

    github代码::  https://github.com/w550856163/App_Demo.git  tag: V1.1 Appium Inspector定位工具界面介绍:  Selecte ...

  6. OpenLayers元素选择工具

    OpenLayers的selector工具相信挺多人都没有用过,其实这个工具用处还是不少的.比如完成元素查询时,需要实现图属性联动,使用这个工具很方便.最近做项目时也使用到这个工具,使用起来确实挺方便 ...

  7. Dotfuscator自定义规则中的元素选择

    Dotfuscator是专业的.NET程序代码保护软件.是支持规则自定义的,你可以对重命名.程序控制流.字符串加密等等功能自定义规则.在进行规则自定义过程中,可以通过元素的不同选择,满足自己的程序需要 ...

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

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

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

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

  10. appium元素定位工具

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

随机推荐

  1. C++11(列表初始化+变量类型推导+类型转换+左右值概念、引用+完美转发和万能应用+定位new+可变参数模板+emplace接口)

    列表初始化 用法 在C++98中,{}只能够对数组元素进行统一的列表初始化,但是对应自定义类型,无法使用{}进行初始化,如下所示: // 数组类型 int arr1[] = { 1,2,3,4 }; ...

  2. 1_使用swiper数组对象循环图片遇到的问题

    今天在练习微信小程序的swiper组件时,想用列表循环出图片,发现图片一直没出来,控制台也没有报错,后来仔细一看,原来是语法格式写错了. 以下是我列表循环踩过的坑: 一:微信小程序的列表循环和vue的 ...

  3. Spark框架下均值漂移算法对舆情聚类的分析

    知网链接 原文链接 张京坤,  王怡怡 软件导刊   2022年21卷第6期 页码:141-146 DOI:10.11907/rjdk.211889    中图分类号:TP274 纸质出版日期:202 ...

  4. day01-Spring基本介绍

    Spring基本介绍 1.官方资料和下载 1.1Spring5下载 直接访问 https://repo.spring.io/ui/native/release/org/springframework/ ...

  5. 模板层之标签、自定义模板语法、母版(模版)的继承与导入、模型层前期准备知识点、ORM常用关键字

    今日内容概要 模板层之标签 if判断 {% if 条件1 %} #条件1成立 <p>Hello!</p> #执行 {% elif 条件2 %} #条件1不成立 条件2成立 &l ...

  6. VUE上传表格文件发送后端,后端解析以及上传文件,前端进行解析的实现方法

    首先来说前端上传表格,然后利用纯前端技术进行解析表格的办法 详细步骤----请点击这里 接下来来说上传发送给后端的代码实现 html <input ref="myInput" ...

  7. Java入门与进阶P-4.5+P-4.6

    逻辑类型 关系运算的结果是要给逻辑值,true或false.这个值可以保存在一个对应的逻辑类型变量中,这样的变量类型是boolean 布尔是为了纪念George Boole对逻辑计算得到贡献 bool ...

  8. java 进阶P-2.3+P-2.4

    封闭的访问属性 private 封装:把数据和对数据的操作放在一起. (所谓封装就是把数据和对这些数据的操作放在一个地方,通过这些操作把这些数据保护起来,别人不能直接接触到这些数据) 1 privat ...

  9. 【随笔记】SiliconLabs Android Demo 编译

    AndroidStudio:3.5.2 AndroidPhone:XiaoMi5 (Android 8.0) AndroidDemo:3.1.4-44 AndroidDemo 源码路径:Simplic ...

  10. 【Django drf】视图层大总结 ViewSetMixin源码分析 路由系统 action装饰器

    目录 九个视图子类 视图集 继承ModelViewSet类写五个接口 继承 ReadOnlyModelView编写2个只读接口 ViewSetMixin源码分析 查找as_view方法 setattr ...