Appium移动端自动化:Api接口详解

滑动操作与拖拽操作

# 滚动处理
# elementObj1 目标滚动元素,elementObj2 起始滚动元素
# 底层通过action操作,与web ui相反,origin_el为目标元素,destination_el为起始元素
# 通过模拟手势可以看出 从下面的元素移动到上面的元素
# action.press(origin_el).move_to(destination_el).release().perform()
# web elementObj1为要移动的元素 elementObj2为移动到某个元素
# action.click(elementObj1).move_to_element(elementObj2).release().perform()
driver.scroll(elementObj1, elementObj2)
 
#通过坐标实现滑屏操作
# 从手机的左上角开始,横坐标为x轴,纵坐标为y
# 分辨率不同,坐标不相同,所以需要根据屏幕的大小做比例运算
driver.swipe(start_x, start_y, end_x, end_y,duration=None)
 
# 拖拽
# elementObj1源元素,elementObj2目标元素
# 通过long_press实现
driver.drag_and_drop(elementObj1, elementObj2)
 
 
# 多点触控 模拟手指点击
# tap模拟按住坐标多少秒,[(x,y)] 多个坐标则写多个元祖。参数2为按住多少秒。ms(毫秒)为单位
driver.tap([(x, y)], 5000)
# 通过坐标实现滑屏操作----------------------------------------
size = driver.get_window_size()#查看屏幕大小
# print(size)
width = size.get('width')
height = size.get('height')
y1 = height * 0.8#标记滑动起始位置
x1 = width * 0.5
y2 = height * 0.2#标记滑动最终位置
x2 = width * 0.5
driver.swipe(x1,y1,x2,y2)

操作APP

# 返回是否安装了对应包名的App True 或者 False
driver.is_app_installed('com.syqy.wecash')
 
# 关闭初始化信息中的App
driver.close_app()
 
# 启动初始化信息中的App
driver.launch_app()
 
# 安装app 参数为软件的绝对路径
driver.install_app(r'C:\Users\bjhouyafan\Desktop\tester\appUi\wecash.apk')
 
# 卸载app 参数接收appPackageName
driver.remove_app('com.syqy.wecash')
 
# 获取当前打开的app名
driver.current_activity
 
# 启动某一个包的,某一个入口
# 参数接受appPackage,appActivity
# 可以省略多个步骤直接到达指定测试的位置
driver.start_activity('com.android.browser','.BrowserActivity')
 
# 每隔0.5秒判断一次当前的app名称是否是activityName
# WebDriverWait
driver.wait_activity('activityName', 5, 0.5)
 
# 将启动的app退出到后台,多少秒后在切回app 
driver.background_app('m')
 
# 清除应用数据缓存,相当于卸载重装
driver.reset()




猜你喜欢

转载自www.cnblogs.com/haifeima/p/10240756.html