如何使用Python客户端在iOS应用中实现触摸并保持功能(Touch and Hold)的Appium测试?

3
我们正在尝试使用Appium Python客户端为我们的iOS应用编写自动化测试。我们想要模拟元素上的滑动事件,但是appium.webdriver.common.touch_action中的API似乎都不按我们想要的方式行事。基本上,我们想将滑动分解为三个事件(KEYDOWN、MOVE、KEYUP)。流程如下:
  1. 查找元素。
  2. 将其保持,从A点向B点滑动并保持在那里。 (KEYDOWN和MOVE)
  3. 做某事。
  4. 再做一些事情。
  5. 释放元素。(KEYUP)

    • 我们如何在iOS上实现它?
我们已经在Android上使用monkeyrunner使其正常工作。它的工作原理如下:
X=50
Y=50
hr = MonkeyRunner.waitForConnection(timeout = 60, deviceId = dev_2)
hr.touch(X, Y,MonkeyDevice.DOWN)
for i in range(1, 13):
    hr.touch(X, Y + 20*i, hr.MOVE)
    time.sleep(0.1)
MonkeyRunner.sleep(2)

// Do something

hr.touch(X, Y, MonkeyDevice.UP)

谢谢!

2个回答

0

使用TouchAction类对我有效:

TouchAction touchAction = new TouchAction(wd);
            touchAction.longPress(webElement).waitAction().moveTo(x,y).release();
            touchAction.perform();

0

尝试使用TouchAction类。

elem = self.driver.find_element_by_css_selector("something") self.touch.tap(elem).Longpress().moveto().perform()


那是一个原子操作。在该语句执行完成之前,我无法执行其他任何操作。 - 2.8a8a_G

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接