繁体   English   中英

如何在appium(ios,真实设备)python中滚动半屏

[英]How to scroll in appium (ios, real device) python a half screen

我有一个问题,我必须向上滚动日历,其中每一天都有自己的元素(并且可能会添加或删除)并找到上一个日期的一些元素。

我只需要 - 从这里滚动到某个特定元素(假设它没有重复)。

我试过——

self.driver.execute_script("mobile: scroll", {"direction": "up"})

它可以工作,但有时它会滚动,元素将再次变得不可见

理想的方法是有一些方法可以从这里滚动到某个元素,或者不滚动整个屏幕,而只滚动一半。

我尝试了以下方法:

self.driver.execute_script("mobile: scroll", {"direction": "up", 'element': el})

self.driver.execute_script("mobile: scrollTo", {"direction": "up", 'element': el.id})

但它不起作用。

  • 硒 (3.0.1)
  • Appium (1.6.3)
  • 蟒蛇 2.7

我找到了解决办法。 也许它会对某人有所帮助:例如,在我的情况下,它将是(可滚动仅是屏幕的左侧部分)< self.driver.swipe(window_size['width'] * 0.3, window_size['height'] * 0.15, window_size['width'] * 0.3, window_size['height'] * 0.65)>

使用这个,它的工作原理。 在满足您的需求之后睡一觉。

action = TouchAction(self.driver)
action.long_press(elementToTap).move_to(elementToDrag).release().perform()
  1. 你应该使用没有 To 的滚动
  2. 您将需要在同一词典中的“元素”旁边使用“toVisible”
  3. 元素 ID 不是定位器 ID,而是会话中的 ID。 可以使用getId()方法获取

self.driver.execute_script("mobile: scroll", {"direction": "up", 'element': el.id, 'toVisible' : 'any non empty text'})

这应该和你一起工作

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM