appium python版api
打印上下文
driver.contexts
打印当前上下文
driver.context
driver.current_context
切换上下文
driver.switch_to.context('WEBVIEW')
打印页面元素
driver.page_source
获取元素text属性
element.get_attribute('text') android使用(获取元素的text值)
element.text ios使用(获取元素的value值)
定位
driver.find_element_by_ios_uiautomation(uia_string)
driver.find_elements_by_ios_uiautomation(uia_string)
driver.find_element_by_android_uiautomator(uia_string)
driver.find_elements_by_android_uiautomator(uia_string)
例:driver.find_element_by_android_uiautomator('new UiSelector().text("竞彩篮球")')
driver.find_element_by_accessibility_id(id)
driver.find_elements_by_accessibility_id(id)
driver.find_element_by_id(id)
driver.find_elements_by_id(id)
driver.find_element_by_xpath(xpath)
driver.find_elements_by_xpath(xpath)
driver.find_element_by_name(name)
driver.find_elements_by_name(name)
driver.find_element_by_class_name(class)
driver.find_elements_by_class_name(class)
driver.find_element(by,value)
by:"id"、"xpath"、"class name"、 "name"、'-ios uiautomation'、'-android uiautomator'、'accessibility id'
坐标点击
driver.tap([(x,y)],time)
滑动
driver.swipe(x1,y1,x2,y2,time)
driver.flick(x1,y1,x2,y2)
输入
driver.send_keys()
driver.set_text() Android可用
driver.set_value() ios可用
如果使用sendkeys不行,可以尝试下面两种方法,我在测试ios输入密码框是自定义的键盘时,用sendkeys输入不了,appium服务端log提示没找到keyboard,后面尝试setvalue可以输入。
截图
driver.get_screenshot_as_file(filename)
获取手机屏幕分辨率
driver.get_window_size()
x = driver.get_window_size()['width']
y = driver.get_window_size()['height']
设置屏幕分辨率
driver.set_window_size(width,height)
获取当前坐标位置
driver.get_window_position()
滚动
driver.scroll(ele1,ele2)
按住element并拖动到另外一个element上
driver.drag_and_drop(ele1,ele2)
缩小
driver.pinch(ele)
放大
driver.zoom(ele)
重启app
driver.reset()
隐藏键盘
driver.hide_keyboard()
发送键盘事件
driver.keyevent(keycode)
按住键盘
driver.press_keycode(keycode)
长按住键盘
driver.long_press_keycode(keycode)
上传文件
driver.push_file(path)
下载文件
driver.pull_file(path)
下载文件夹
driver.pull_folder(path)
app隐藏后台
driver.background_app(time)
安装app
driver.install_app(path)
卸载app
driver.remove_app(app_id)
启动app
driver.launch_app()
关闭app
driver.close_app()
启动activity
driver.start_activity(app_package, app_activity)
打印当前activity
driver.current_activity
锁屏
driver.lock(time)
振动
driver.shake()
打开通知栏(api 18以上)
driver.open_notifications()
获取网络
driver.network_connection
设置网络连接( Android only.)
driver.set_network_connection(type)
Value (Alias) | Data | Wifi | Airplane Mode
-------------------------------------------------
0 (None) | 0 | 0 | 0
1 (Airplane Mode) | 0 | 0 | 1
2 (Wifi only) | 0 | 1 | 0
4 (Data only) | 1 | 0 | 0
6 (All network on) | 1 | 1 | 0
type参数:
NO_CONNECTION = 0
AIRPLANE_MODE = 1
WIFI_ONLY = 2
DATA_ONLY = 4
ALL_NETWORK_ON = 6
例
from appium.webdriver.connectiontype import ConnectionType
driver.set_network_connection(ConnectionType.AIRPLANE_MODE)
获取手机输入法(返回list)
driver.available_ime_engines
激活某种输入法
driver.activate_ime_engine(engine)
判断输入法是否激活(返回bool)
driver.is_ime_active()
撤销当前输入法(Android only)
driver.deactivate_ime_engine()
得到当前设置
driver.get_settings()
返回{u'ignoreUnimportantViews': False}
更新当前设置
driver.update_settings(settings)
settings参数为dict,如{ignoreUnimportantViews : True}
ignoreUnimportantViews
参数:调用 uiautomator 的函数setCompressedLayoutHierarchy()。由于
Accessibility 命令在忽略部分元素的情况下执行速度会加快,这个关键字能加快测试执行的速度。被忽略的元素将不能够被找到,因此这个关键字同时也被实现成可以随时改变的 *设置 ( settings ) * 。默认值 false
开关定位服务
driver.toggle_location_services()
appium python版api的更多相关文章
- Appium 自动化测试(8) -- Appium Python client -- API
最好的学习方法,就是看源码! 在 \appium\webdriver\webdriver.py ,新增了两个封装好定位安卓元素的方法,如 find_element_by_accessibility ...
- Appium Python Driver Api
- Appium Python核心API
adb命令模拟按键事件 :http://blog.sina.com.cn/s/blog_68f262210102vc1b.html
- 移动端自动化测试Appium 从入门到项目实战Python版☝☝☝
移动端自动化测试Appium 从入门到项目实战Python版 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 说到APP自动化测试,Appium可是说是非常流 ...
- Appium python API 总结
Appium python api 根据testerhome的文章,再补充一些文章里面没有提及的API [TOC] [1]find element driver 的方法 注意:这几个方法只能通过sel ...
- Appium+python自动化8-Appium Python API
Appium+python自动化8-AppiumPython API 前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...
- appium+python自动化☞appium python api大全
整理了一些常用的appium python api,供学习使用...
- Appium===Appium+Python API(转)
Appium+python自动化8-Appium Python API 前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts contex ...
- Appium+python自动化8-Appium Python API【转载】
前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts contexts(self): Returns the contexts withi ...
随机推荐
- linux上不能显示Jfreechart的图片文件
出现错误: Jan 23, 2015 4:19:21 PM org.apache.catalina.core.StandardWrapperValve invokeSEVERE: Servlet.s ...
- 【bzoj1299】[LLH邀请赛]巧克力棒(博弈论思维题)
题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=1299 首先我们把每根巧克力棒看成一堆石子,把巧克力棒的长度看作石子的个数,那么原问题就 ...
- App测试经验分享之登录注册
要诀 另外自己总结了一些要诀,仅供参考: 1)快:快速操作,营造冲突的场景,例如加载过程中返回键交互,快速点击登录按钮,快速切换菜单项,快速多次上下拉刷新 2)变:手机横竖屏.手机切换语言.手机调整字 ...
- pandas读取Excel
time31 = pd.read_excel('F:/save_file/3问出车表.xlsx', sheetname='Sheet1') # 读取‘3问出车表.xlsx’中的Sheet1表单, ti ...
- 0.00-050613_Makefile
# Makefile for the simple example kernel. AS86 =as86 -0 -a LD86 =ld86 -0 AS =gas LD =gld LDFLAGS =-s ...
- ROS创建工作空间
1.$mkdir catkin_ws && cd catkin_ws && mkdir src 2.$catkin_make (#这一句是完成编译初始化,注意括号内 ...
- 解决:git warning: LF will be replaced by CRLF in xxxx
一. git add -A报错 在利用git add -A添加文件时,意外的发现报错了 报错信息中: LF:Line Feed 换行 CRLF:Carriage Return Line Feed 回 ...
- 数据结构录 之 单调队列&单调栈。(转)
http://www.cnblogs.com/whywhy/p/5066306.html 队列和栈是很常见的应用,大部分算法中都能见到他们的影子. 而单纯的队列和栈经常不能满足需求,所以需要一些很神奇 ...
- angularjs 简单指令
<!DOCTYPE html> <html data-ng-app="app"> <head> <title>angular js& ...
- python 实现一个TwoSum的例子
今天无意中看到一个题目,也不是很难,就想着用python实现以下: 题目是数组中的两个数相加等于输入的一个target,然后输出数组的下标. 比如: [1,2,3,4,5,6] target=7 返 ...