Appium 想实现上滑操作,用了 swipe 和 press 的 moveTo 都不行,求指点

Aya · 2016年11月24日 · 最后由 毛小利 回复于 2017年01月06日 · 2307 次阅读

代码如下:
我是想有上滑的操作,所以从屏幕的 3/4 位置向屏幕 1/4 位置上滑,但是发现它是下滑,将两个坐标互换还是下滑的操作,新人求指点

self.driver.find_element_by_xpath('//UIAApplication[1]/UIAWindow[1]/UIATableView[1]/UIATableCell[1]').click()
width = self.driver.get_window_size()['width']
height = self.driver.get_window_size()['height']
 #self.driver.swipe(start_x=width / 2, start_y=500, end_x=width / 2, end_y=50, duration=1000)
elWebView = self.driver.find_element_by_xpath('//UIAApplication[1]/UIAWindow[1]/UIAScrollView[1]/UIAWebView[1]')
act.press(None, width / 2, height * 3 / 4).move_to(None, width / 2, height/4).release().perform()
sleep(10)
共收到 5 条回复 时间 点赞

TouchAction(self.driver).press(x=100,y=560).wait(3000).move_to(x=0,y=-200).release().perform() .
我的这样实现了向上滑动。不知道你那边的版本可以不

appium 在 1.5.2 后面的版本,把滑动结束时坐标改成了相对坐标,不是绝对的坐标。

—— 来自 TesterHome 官方 安卓客户端

Aya #3 · 2016年11月25日 Author

#2 楼 @ID_sda 我用的四分之三和四分之一怎么也不行呢,求问如何处理

swipe 应该可以实现这种滑动啊
driver.swipe(x1,y1,x2,y2),我自测是可用的
你代码里注释的 swipe 写成 svipe 了 ,不知道是不是这个原因导致你失败

#3 楼 @aya 你的代码实现的就是从四分之三的高度,移动到(四分之三的高度 + 四分之一的高度)的位置,所以肯定是下滑的了,要实现上滑,可以试一下如下代码:

act.press(None, width / 2, height * 3 / 4).move_to(None, width / 2, -1 * height/2).release().perform()
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册