一.tap方法
appium中模拟手指点击方法,叫tap,有两个参数,元素位置和点击持续时间。一般语法是这样的tap([(x1,y1),(x2,y2)],100), 我们通过手机百度中,利用tap方法来点击摄像头按钮来举例。
1.元素定位
记住上面的元素坐标,下面需要用到。
2.tap代码实现
import os import time from appium import webdriver desired_caps ={ 'platformName': 'Android', 'platformVersion': '6.0.1', 'deviceName': 'KIW-AL10', 'noReset': True, 'appPackage': 'com.baidu.searchbox', 'appActivity': 'com.baidu.searchbox.SplashActivity', 'unicodeKeyboard': True, 'resetKeyboard': True } driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)#启动app time.sleep(3) #app启动后等待3秒,方便元素加载完成 #模拟手指点击操作 driver.tap([(918,413),(1026,521)], 100)
解释:上面tap方法中位置的元素点坐标是通过ui automator viewer获取,持续时间100是指100毫秒。
2.相对坐标
手机坐标定位 ;打开手机自带的开发者选项-指针位置打开,点击屏幕可以得到该点的绝对坐标
相对坐标;手机得到的只是绝对坐标,如果换了一个手机屏幕大小不一样,则定位不到,需要 用代码实现
以下代码实现
#点击左上角退出订单 x = driver.get_window_size()['width'] y = driver.get_window_size()['height'] print(driver.get_window_size()) #可以获取当前手机屏幕大小 打印出为 1080,2244 a = 90/1080 #90,150为该点的手机屏幕坐标 b = 150/2244 driver.tap([(a*x, b*y)],2) #此为相对坐标
最新评论