建设小学瓯江校区网站,wordpress地址和站点地址有什么用,wordpress等级插件,小说网站静态模板一、触摸 TouchAction
在所有的 Appium 客户端库里#xff0c;TouchAction 触摸对象被创建并被赋予一连串的事件。
规范里可用的事件有#xff1a; * 短按(press) * 释放(release) * 移动到(moveTo) * 点击(tap) * 等待(wait) * 长按(longPress) * 取消(cancel) * 执行(per…
一、触摸 TouchAction
在所有的 Appium 客户端库里TouchAction 触摸对象被创建并被赋予一连串的事件。
规范里可用的事件有 * 短按(press) * 释放(release) * 移动到(moveTo) * 点击(tap) * 等待(wait) * 长按(longPress) * 取消(cancel) * 执行(perform)
示例
from appium import webdriver
from appium.webdriver.common.touch_action import TouchActiondriverwebdriver.Remote()
action TouchAction(driver) # 创建 TouchAction 对象
# 在坐标(10,100) 位置按下等待100ms滑动到 ele 元素上释放
action.press(x10,y100).wait(100).move_to(elele).release()
# 执行动作
action.perform()
注意 action.press(x10,y100).wait(100).move_to(elele).release() 只是将动作存储在action 对象中还没有执行具体执行动作要使用 action.perform()。
点击操作
# 在控件的中心点上点击一下
tap(WebElement el)# 在x,y点点击一下
tap(int x, int y)# 以控件el的左上角为基准x 轴向右移动x单位y 轴向下移动y单位,在该点上点击
tap(WebElement el, int x, int y)
按下操作
#在控件上执行press操作。
press(WebElement el) #在坐标为x,y的点执行press操作
press(int x, int y) #在控件el的左上角的x坐标偏移x单位y坐标偏移y单位的坐标上执行press操作。
press(WebElement el, int x, int y)
长按操作
# 控件长按
longPress(WebElement el)# 点长按
longPress(int x, int y)# 偏移点长按
longPress(WebElement el, int x, int y)
移动操作
#以el为目标从另一个点移动到该目标上
moveTo(WebElement el) #以x,y点为目标从另一个点移动到该目标上
moveTo(int x, int y) # 以控件el的左上角为基准偏移x,y。以该点为目标从另一个点移动到该点上。
moveTo(WebElement el, int x, int y)
释放操作
release() # 释放动作与按下和长按联合使用
等待
# 代表一个空操作等待一段时间
wait()# 等待ms毫秒
wait(int ms)
执行 TouchAction 存储的动作
# 执行动作
perform()# 也可以通过 driver 对象直接执行触摸操作
driver.perform(TouchAction().tap(el))
现在我也找了很多测试的朋友做了一个分享技术的交流群共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源没人解答问题坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化性能安全测试开发等等方面有一定建树的技术大牛
分享他们的经验还会分享很多直播讲座和技术沙龙
可以免费学习划重点开源的
qq群号110685036【暗号csdn999】 实例九宫格解锁九宫格坐标与解锁密码如下图 from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction# 九宫格原点的位置从左至右从上至下
site [(200, 200), (200, 400), (200, 600),(400, 200), (400, 400), (400, 600),(600, 200), (600, 400), (600, 600)]pwd 01246
pwd_site []
# 将密码转换为坐标位置
for s in pwd:pwd_site.append(site[int(s)])driver webdriver.Remote()
action TouchAction(driver)# 在起始点按下
action.press(pwd_site[0]).wait(200)# 按照坐标点移动
for i in range(1, len(pwd_site)):action.move_to(pwd_site[i]).wait(200)
# 释放
action.release()# 执行动作
action.perform()
多点触控(MultiTouch)
MultiTouch对象是触摸操作的集合只有两个方法add 和 perform 。
add 于将不同的触摸操作添加到当前的多点触控中。
perform 执行多点触控动作
示例
from appium import webdriver
from appium.webdriver.common.touch_action import TouchAction
from appium.webdriver.common.multi_action import MultiActiondriver webdriver.Remote()# 创建触摸事件
action1 TouchAction(driver).tap(x100, y100)
action2 TouchAction(driver).tap(elementele)# 创建多点触控对象
multi_action MultiAction(driver)
# 同时执行 action1 和 action2 动作
multi_action.add(action1).add(action2)
# 执行多点触控
multi_action.perform()
END今天的分享就到此结束了点赞关注不迷路~