appium的手势操作方法

上一篇 / 下一篇  2018-10-25 15:51:32 / 个人分类:appium

1、屏幕滑动:swipe

swpie()方法包含5个参数:起始点坐标(x1,y1)、终点坐标(x2,y2)、移动时长

只需要考虑坐标的位置,而不太注重屏幕的分辨率。

如何获取手机屏幕的长宽:get_window_size()

如何实现屏幕的滑动:通过长宽上的不同比例的倍数实现滑动的定位

(1)左滑:driver.swipe(int(w*0.25),int(h*0.5),int(w*0.75),int(h*0.5),1000)

(2)上滑:driver.swipe(int(w*0.5),int(h*0.75),int(w*0.5),int(h*0.25) ,1000)

 

2、多点点击:tap

tap():多点触控。

driver.tap([(398,1864),(703,1852),],3000)实现在这两个坐标,同时点击3秒钟

最多支持5个坐标的同时点击。

 

3、缩小和放大操作:

缩小:pinch()pinch(self, element=None, percent=200, steps=50)

放大:zoom()zoom(self, element=None, percent=200, steps=50)

 

percent缩放比例,percent=200就是2倍的比率

steps是步长

 

如:我要对以下图片放大两倍

代码如下:

element=driver.find_elements_by_class_name('android.widget.ImageView')

sleep(3)

driver.zoom(element[5],200,50)

 

 

4、锁屏以及手势解锁:

1

手势解锁需要导入appiumTouchAction模块

手势解锁:从一个点,点击并保持滑动到第二个点,再到第三个。。。。。。

TouchAction(driver).press(x=159,y=749).move_to(x=206,y=0).move_to(x=206,y=0).move_to(x=0,y=201).move_to(x=0,y=201).release().perform()

 

注:move_to(x=0,y=201)为相对坐标。

 

2

锁屏:

driver.lock(3)------------------执行锁屏命令,锁屏3秒,但无实际效用。

driver.keyevent(26)------------keyevent表示执行一些手机键盘指令动作,26为电源键,此操作为点亮或者熄灭屏幕

 

5、拖拽操作:drag_and_drop:

原理:需要两个元素id

id1:需要拖拽的元素位置id

id2:需要拖拽到达的最终位置id

实例:QQ的未读消息的拖拽取消

代码如下:

element1=driver.find_elements_by_id('id1')

element2=driver.find_elements_by_id('id2')

driver.drag_and_drop(element1[0],element2[0])

 

 


TAG:

 

评分:0

我来说两句

Open Toolbar