vue 多点触控手势_涨姿势了!Appium也可以多点触控操作

有头发且有趣的码农万里挑一~ 

104

有料叔 | 一位有故事的程序猿

9c403da4a0f3a1a281f7d8565467d492.gif

在网页中我们经常使用缩放操作来便利的查看具体的信息,在appium中使用MultiAction多点触控的类来实现

MultiAction是多点触控的类,可以模拟用户多点操作。主要包含加载add()和执行perform()两个方法. MultiAction一般和TouchAction结合使用,故需要导入以下模块:

93bbfdd7468e4563b65a531a07311d7b.png

from appium.webdriver.conmmon. touch_action import TouchAction

from appium.webdriver.conmmon. multi_action import MultiAction

2c1967fc942b40bbda2fe0a859efa32b.png

使用方法如下:

加载:add()

add(action1,action2,…)将touchaction的对象添加到MultiAction中

action1,action2描述一个手指要执行的动作

例如:

action1=TouchAction(driver)

Action1.press(x,y)wait(1000).move_to(x1,y1).release()

MultiAction(driver).add(action1)

执行:perform()

perform()执行存储在对象中的操作,结合add()使用,

例如:

action1=TouchAction(driver)

Action1.press(x,y)wait(1000).move_to(x1,y1).release()

MultiAction(driver).add(action1)

MultiAction(driver).perform()

完整案例:

以地图为例

0c9339e12db56f497663c76164421127.png

放大(Zoom):则手指分别从B>A,C>D同时向外移动放大页面

缩小(pinch):则手指分别从A>B,D>C同时向中间移动缩小页面

#初始化

from appium import webdriver

from appium.webdriver.common.touch_action import TouchAction

from appium.webdriver.common.multi_action import MultiAction

x=driver.get_size()[‘width’]

y=driver.get_size()[‘height’]

#定义放大函数

def Zoom():

action1=TouchAction(driver) #第一个手势

action2=TouchAction(driver) #第二个手势

zoom_action=MultiAction(driver) #放大手势

action1.press(x*0.4,y*0.4).wait(1000).move_to(x*0.2,y*0.2).release()

action2.press(x*0.6,y*0.6).wait(1000).move_to(x*0.8,y*0.8).release()

zoom _action.add(action1,action2)   #加载

zoom _action.perform()  #执行

def Pinch(): #定义缩小函数

action1=TouchAction(driver) #第一个手势

action2=TouchAction(driver) #第二个手势

pinch _action=MultiAction(driver) #放大手势

action1.press(x*0.2,y*0.2).wait(1000).move_to(x*0.4,y*0.4).release()

action2.press(x*0.8,y*0.8).wait(1000).move_to(x*0.6,y*0.6).release()

pinch _action.add(action1,action2)   #加载

pinch _action.perform()  #执行

#主函数调用子函数

#__name=’__main__’表示执行当前py文件;否则当前文件属于调用模块

if __name__=’__main__’: 

for i int range(3): #执行缩小函数3次,range(3)代表执行0,1,2共3次

Pinch()

ccebe2614b86e96ede1b2e2dbf528a50.png

19b4a961c6d47f96979853a2eaac80c4.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值