说说常用appium做自动化经常会用到的手势操作。声明:所有的手势操作都会用到这个模块   from appium.webdriver.common.touch_action import TouchAction

操作时都得传入driver对象,执行时都用上.perfrom()才能生效,使用move_to根据坐标移动手势,记得打开开发者模式里面的指针位置

1:轻敲   tap,类似于click点击

使用方法:可以传元素或者是坐标

# todo 传元素点击轻敲

TouchAction(driver).tap(more_button).perform()

todo 传坐标点击

TouchAction(driver).tap(x=680,y=1045).perform()

2:按压   press

使用方法:可以传元素或者是坐标

el = driver.find_element_by_xpath('//*[@text="开放源代码许可"]')

# todo 按压5秒后释放

TouchAction(driver).press(el).wait(5000).release().perform()

3:长按   long_press

使用方法:可以传元素或者是坐标

# todo 长按6秒

el = driver.find_element_by_xpath('//*[@text="WiredSSID"]')

TouchAction(driver).long_press(el=el,duration=6000).perform()

4:等待   wait

使用方法:参考上面,传等待时间

5:release   释放

使用方法:参考上面,按压完成后就释放手指

6:perfrom   执行

使用方法:参考上面,任何手势操作都得用它才能执行

7:move_to   移动

使用方法:可以传元素或者是坐标,坐标根据x,y轴的位置移动,具体参考下面手势解锁demo

# todo 实现滑动解锁的功能
from appium import webdriver
import time
from appium.webdriver.common.touch_action import TouchActiondesired_caps = {"platformName":"Android","platformVersion":"5.1","deviceName":"127.0.0.1:62001","appPackage":"com.android.settings","appActivity":".ChooseLockPattern"}# 声明driver对象
driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)# todo 执行手势
# todo 根据坐标移动手势,记得打开指针位置
# todo 一边按压,一边移动距离
TouchAction(driver).press(x=172,y=622).move_to(x=538,y=620).\move_to(x=905,y=625).move_to(x=537,y=976).move_to(x=176,y=1343).\move_to(x=537,y=1340).move_to(x=902,y=1343).perform()time.sleep(1)
driver.quit()

move_to用法图片:

轻敲用法图片:

长按用法图片:

打开指针位置方便根据坐标定位:

转载于:https://www.cnblogs.com/xiamaojjie/p/11462199.html

appium自动化之手势操作总结(附带手势解锁)相关推荐

  1. Android之GestureDetector-简单手势操作及通过手势缩放图片,我离职后面试收割小米等大厂offer

    Android提供了手势检测,并为其提供了相应的监听器,需要用到的类是GestureDetector,其实例代表了一个手势检测器,创建GestureDetector时需要传入一个GestureDete ...

  2. Android之GestureDetector-简单手势操作及通过手势缩放图片

     Android提供了手势检测,并为其提供了相应的监听器,需要用到的类是GestureDetector,其实例代表了一个手势检测器,创建GestureDetector时需要传入一个GestureDet ...

  3. 自定义Imageview控件实现多种手势操作 (拖动、水平缩放、竖直缩放、等比例缩放、双击、长按)

    项目中需要使用自定义控件的多种手势操作,之前在网上查阅资料的时候发现能找到的一般是只实现了其中的几种,这次就把我做的控件分享一下,人人为我,我为人人嘛,哈哈! 这个自定义控件实现的主要功能是控件的拖动 ...

  4. iOS开发系列课程(08) --- 事件处理详解和手势操作

    iOS中的事件分发 事件的分类 Touch Events(多点触摸事件) touchesBegan:withEvent:方法:一个或多个手指置于视图或窗口上 touchesMoved:withEven ...

  5. 三星android10手势,三星全面屏手势终于来了!看着有点熟悉

    智能手机进入全面屏时代之后,虽然手机尺寸变化不大,但是由于屏占比的提高,手机正面可触控的区域越来越大.安卓传统的三大金刚键在国内已经很少见了,Android 9.0也支持原生手势操作代替三大金刚键,现 ...

  6. 【Python+Appium】开展自动化测试(十)TouchAction类与MultiAction类(控件元素的滑动、拖动,九宫格解锁,手势操作等)

    目录 前言 一,TouchAction类 1,TouchAction类由webdriver库提供,提供以下方法: 2,tap点击 3,press短按 4,long_press长按 5,move_to移 ...

  7. python自动操作微信_Python+Appium 自动化操作微信入门看这一篇就够了

    简介 Appium 是一个开源的自动化测试工具,支持 Android.iOS 平台上的原生应用,支持 Java.Python.PHP 等多种语言. Appium 封装了 Selenium,能够为用户提 ...

  8. 索尼xz2android设置向导,索尼为Xperia XZ2 Premium推送Android 9.0 迎来全新手势操作

    我们此前报道过,索尼曾计划于10月26日为Xperia XZ Premium,Xperia XZ1和Xperia XZ1 Compact推送Android 9.0更新,但是新系统出现了一些软件级的错误 ...

  9. day15-Appium高级手势操作

    Appium高级手势操作 滑动操作 scroll事件 概念 从一个元素滑动到另外一个元素,直到页面自动停止,模拟人滑动一下的操作.必须要求两个元素都在界面上可见,否则会报错. orgin_el:滑动开 ...

最新文章

  1. Weblogic部署web项目获取项目根目录为null
  2. VTK:PolyData之QuantizePolyDataPoints
  3. Qt字符串与整形转换
  4. JSONPATH使用方法
  5. JS中的兼容问题总结
  6. 【Loj - 515】贪心只能过样例(暴力,或01背包 + bitset)
  7. EPOLLOUT/EPOLLIN事件触发的条件
  8. oracle03206,ORACLE数据库创建表空间ORA-03206报错的解决方案
  9. c语言不能在函数中求数组大小,C语言中数组长度不能用变量定义吗?
  10. UML 10 种常见的域建模错误
  11. 用jsonp 解决跨域问题
  12. WordPress学习笔记(二)插件安装
  13. iSCSI网络储存应用
  14. Android摄影App,这20款摄影APP,让你的照片飞上天!
  15. oracle启动pmon,oracle 11g pmon工作内容系列三
  16. html小游戏打砖块,打砖块.html
  17. 《Person Re-identification:Past, Present and Future》论文笔记
  18. 移动应用中的AR开发,6款最受欢迎工具推荐
  19. 取消UOS双系统开机启动
  20. OCR最佳实践项目汇总

热门文章

  1. 抽丝剥茧C语言(中阶)分支与循环练习
  2. js监听html页面大小变化,JS监听窗口变化实时获取浏览器窗口大小
  3. Java对图片进行添加水印操作
  4. 一个老的游戏,据说全世界只有不到4000人可以走出房间.密室逃脱--之“天蓝色房间”...
  5. 项目管理基础知识关键路径和松弛时间
  6. 用Matlab进行时域信号的频谱分析
  7. Jmeter通过HTTP代理服务器录制脚本(二)
  8. WEB前端学习:CSS学习_用户界面样式
  9. cogs 1341 永无乡
  10. @Configuration(proxyBeanMethods = false) 设置这个为false有啥用