一、根据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. [OpenCV实战]2 人脸识别算法对比

    在本教程中,我们将讨论各种人脸检测方法,并对各种方法进行比较.下面是主要的人脸检测方法: 1 OpenCV中的Haar Cascade人脸分类器: 2 OpenCV中的深度学习人脸分类器: 3 Dli ...

  2. element上传图片组件使用方法|图片回显|格式转换base64

    upload上传组件的使用方法 上传图片后自动上传(也可以手动上传),图片上传成功后由后端返回特定图片地址,在表单提交后将表单数据同图片地址一并返回即可完成图片上传功能. 组件HTML <!-- ...

  3. 使用Lighthouse更好推动项目性能优化,性能指标详解,优化方法,需要关注指标分析

    Lighthouse是什么---一种工具 Lighthouse 是一个开源的自动化工具,用来测试页面性能. 为什么要用Lighthouse----提升用户体验 Web性能可以直接影响业务指标,例如转化 ...

  4. angular Ionic CLI连接数据获取数据无限滚动

  5. nexus私服搭建的上传和下载

    下载 方法1 下载应该先在nexus中创建相关的库(宿主库.代理库.仓库组),也可以使用原有的库 随后在pom文件中增加以下代码,即可从私服中下载相关的依赖包(注:依赖包的下载首先基于本地库,本地库没 ...

  6. scroll-view滚动导航自动居中

      =>      代码片段:https://developers.weixin.qq.com/s/2fE1QWmE7xFR (复制在微信开发者工具打开) <!-- enable-flex ...

  7. 强大的word插件,让工作更高效:不坑盒子 2023版

    不坑盒子简介 很多朋友在工作过程中需要对Word文档进行编辑处理,如果想让Word排版更有效率可以试试小编带来的这款不坑盒子软件,这是一个非常好用的插件工具,专门应用在Word文档中,支持Office ...

  8. vue + element-ui + qrcodejs2 实现二维码生成

    1.在所在项目下安装插件 npm i qrcodejs2 2.在需要生成二维码的页面引入qrcodejs import QRCode from 'qrcodejs2' 3.使用 <el-butt ...

  9. 简单搭建react开发环境

    目录 前言 一.node.js使用 二.vscode 1.打开文件 2.运行 3. 第一个react程序,从helloworld写起 总结 前言 安装前需要安装:node.js.vscode 一.no ...

  10. vue+.net入门级书签项目

    vu3+.net6 webApi 书签管理项目 前言 Gitee项目地址:https://gitee.com/zyplj/book-marks Github项目地址:https://github.co ...