我正在尝试使用Appium python客户端为iOS应用程序编写UI测试。我正在尝试实现以下目标-
手指1: 1)在0秒内触及(100,800) 2)10秒后触碰
手指2: 1)在0秒内按下(200,800) 2)10秒后触碰
手指3: 1)1秒钟没有活动 2)在1秒内触及(100,100) 3)将触摸拖到(500,500) 4)在9秒后触碰
我已经编写了以下代码来实现我想要的-
actionBuilder = ActionBuilder(driver)
finger1 = actionBuilder.add_pointer_input(POINTER_TOUCH, 'finger 1')
finger1.create_pointer_move(x=100, y=800, duration=0, origin='viewport')
finger1.create_pointer_down(MouseButton.LEFT)
finger1.create_pause(pause_duration=10)
finger1.create_pointer_up(MouseButton.LEFT)
finger2 = actionBuilder.add_pointer_input(POINTER_TOUCH, 'finger 2')
finger2.create_pointer_move(x=200, y=800, duration=0, origin='viewport')
finger2.create_pointer_down(MouseButton.LEFT)
finger2.create_pause(pause_duration=10)
finger2.create_pointer_up(MouseButton.LEFT)
finger3 = actionBuilder.add_pointer_input(POINTER_TOUCH, 'finger 3')
finger3.create_pointer_move(x=100, y=100, duration=1000, origin='viewport')
finger3.create_pointer_down(MouseButton.LEFT)
finger3.create_pause(pause_duration=8)
finger3.create_pointer_move(x=500, y=500, duration=0, origin='viewport')
finger3.create_pointer_up(MouseButton.LEFT)
actionBuilder.perform()
运行此命令后,我得到的是在最初的1000毫秒内,触摸[手指1,手指2] 可以在屏幕上看到(我在应用程序中使用触摸显示器),但是一旦[Finger 3]的触摸出现在屏幕上,[Finger 1,Finger 2]的触摸就会丢失。 我在这里做错什么了吗?还有其他方法可以实现这一目标吗?
PS:使用create_pause()
方法触摸[手指3]时,我还有一个疑问。它不会暂停触摸,但是create_pause()
传递的持续时间用于create_pointer_move
的触摸移动。
Appium版本:1.15.1