appium 常用API使用总结!
将常用函数进行适用总结,后期在使用的过程中直接查找调用即可
获取界面属性、控件属性
1、current_activity:获取activity名称
device.current_activity
2、get_window_size():获取手机屏幕宽、高
device.get_window_size()
3、tag_name:获取控件的class
device.find_element_by_name(u"菜单").tag_name
4、text:获取控件的text
device.find_element_by_id(u"com.android.mms:id/action_compose_new").text
5、get_attribute:获取控件的给定属性或属性
device.find_element_by_id("com.android.mms:id/action_compose_new").get_attribute("enabled")
注意点:1、checkable、checked、clickable、enabled、focusable、focused、scollable、long-clickable、password、selected,返回的是布尔值,True或False
2、.get_attribute("name") 返回的是‘content_desc’的值
3、.get_attribute("className") 返回的是‘class’的值
6、is_displayed:判断该控件是否对用户可见
device.find_element_by_id("com.android.mms:id/action_compose_new").is_displayed() 返回True或False
7、size:获取控件的大小
device.find_element_by_id("com.android.mms:id/action_compose_new").size
8、location:获取控件的位置
device.find_element_by_id("com.android.mms:id/action_compose_new").location
9、current_context:返回当前会话的当前上下文
device.current_context
10、context:返回当前会话的当前上下文
device.context
11、scroll:从元素origin_el滚动至元素destination_el
'''说明:scroll为横滚动,并且元素不能再同一页面上'''
device.scroll(self.device.find_element_by_name(u"分类文件"), self.device.find_element_by_name(u"本地"))
12、drag_and_drop:将元素origin_el拖到目标元素destination_el
device.drag_and_drop(self.device.find_element_by_name(u"主题"), self.device.find_element_by_name(u"QQ音乐"))
13、tap:模拟手指点击
'''说明:模拟手指点击(最多五个手指),可设置按住时间长度(毫秒),用法:driver.tap([(x,y),(x1,y1)],500)'''
device.tap([(218,687),])
14、swipe:从A点滑动至B点,滑动时间为毫秒
device.swipe(418,1067,410,328)
15、flick:按住A点后快速滑动至B点
device.flick(502,955,486,407)
16、pinch:在元素上执行模拟双指捏(缩小操作)
device.pinch(self.device.find_element_by_name(u"相机"),300)
17、zoom:在元素上执行放大操作
device.zoom(self.device.find_element_by_id("id"))
18、press_keycode:发送按键码(安卓仅有),按键码网上搜
device.press_keycode(3)
19、long_press_keycode:发送一个长按的按键码(长按某键)
device.long_press_keycode(3)
20、is_app_installed:检查app是否已安装
device.is_app_installed("com.android.xxx")
21、install_app:安装app
device.install_app(app_path)
22、remove_app:删除app
device.remove_app(app_path)
23、close_app:关掉app
device.close_app ()
24、clear:如果是文本输入元素,就清除文本
element.clear()
25、network_connection:返回网络的连接类型
'''返回一个指定网络连接类型的整数位掩码(android)'''
device.network_connection
26、set_network_connection(connectionType):设置网络的连接(android)
''' Possible values:
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 '''
device.set_network_connection(2)
27、available_ime_engines:返回android设备可用的输入法
device.available_ime_engines
28、is_ime_active():检查设备是否有输入法服务活动,返回真/假。
device.is_ime_active()
还有剩余查找元素等的API都比较简单,可在appium的底层进行查看,以上的所有都可以在appium的底层所查找到
appium 常用API使用总结!的更多相关文章
- 7、Appium常用API
嗯,官网已经介绍的很全了.会选几个常用API后期整理. Appium常用API地址:http://appium.io/docs/cn/writing-running-appium/appium-bin ...
- Appium常用API(二)
接前面的常用API(一),本文接着介绍如下: 1.press_keycode press_keycode(self, keycode, metastate=None): Sends a keycode ...
- appium 常用api介绍(2)
前言:接着上一篇继续讲常用的一些api 参考博文:http://blog.csdn.net/bear_w/article/details/50330565 1.send_keys send_keys( ...
- Appium常用API(一)
Appium作为当下一款移动应用的自动化测试工具,对于测试来说重要性不言可寓,废话不多说,下面总结下它常用的API: 1.contextscontexts(self): Returns the con ...
- appium 常用API
''.appium api第二弹 锋利的python,这是初稿,2015/1/5 如有错误的地方,请同学们进行留言,我会及时予以修改,尽量整合一份ok的api 作者:Mads Spiral QQ:79 ...
- appium 常用api介绍(1)
前言:android手机大家都很熟悉,操作有按键.触摸.点击.滑动等,各种操作方法可以通过api的方法来实现. 参考博文:http://blog.csdn.net/bear_w/article/det ...
- Appium常用Api实操
本文是基于python语言在android上实操的,仅记录(忽略排版~~~) 会不时更新的: from appium import webdriver from selenium.webdriver. ...
- APPIUM 常用API介绍(3)
1.send_keys send_keys(self, *value): Simulates typing into the element[在元素中模拟输入(开启appium自带的输入法并配置了ap ...
- Appium之常用API
Appium常用API解析 1.current_activity:获取当前页面的activity名,比如com.taobao.tao.TBMainActivity 或 com.taobao.brows ...
随机推荐
- 轻松解决oracle11g 空表不能exp导出的问题
轻松解决oracle11g 空表不能exp导出的问题 [引用 2012-9-22 18:06:36] 字号:大 中 小 oracle11g的新特性,数据条数是0时不分配segment,所以就不 ...
- 使用mpvue开发微信小程序
更多内容请查看 我的新博客 地址 : 前言 16年小程序刚出来的时候,就准备花点时间去学学.无奈现实中手上项目太多,一个接着一个,而且也没有开发小程序的需求,所以就一拖再拖. 直到上周,终于有一个小程 ...
- 推荐Python、Django中文文档地址
协作翻译网:http://usyiyi.cn/ 老牌的Python中文社区:http://woodpecker.org.cn/ The Django Book2.0中文版:http://djangob ...
- Ocelot中文文档-Qos服务质量
目前Ocelot支持一种QoS功能. 如果您希望在请求向下游服务时使用断路,则可以在ReRoute中进行设置. 这个功能使用了一个名为Polly的.NET库,这个库很棒,在这里可以找到它. 添加如下配 ...
- 下载Github上某个项目的子文件夹和单个文件
preface Github下的项目可能很大,里面有很多的子文件夹,我们可能只需要使用某个子目录下的资源,可以不用下载完整的repo就能使用. 例如,我想下载这个repo中的字典文件:https:// ...
- 学习MySQL我们应该知道哪些东西?
随笔:小编由于年前一直在找工作,而年后找到工作后又一直在忙工作,所以也很少有时间给大家写点什么,总的来说呢,回顾一下之前面试的几次经历,也曾小小的总结了一下自己的不足,发现自己虽然一直在原有的公司(外 ...
- Java 面试知识点解析(二)——高并发编程篇
前言: 在遨游了一番 Java Web 的世界之后,发现了自己的一些缺失,所以就着一篇深度好文:知名互联网公司校招 Java 开发岗面试知识点解析 ,来好好的对 Java 知识点进行复习和学习一番,大 ...
- D3中的each() 以及svg defs元素 clipPath的使用
each() 方法允许我们定制对选择集中DOM元素的处理行为: selection . each ( func ) 参数 func 是调用者定义的函数,在d3中被称为 访问器/accessor . d ...
- Gradle连接Maven仓库直接从仓库 更新JAR包
一般情况下服务器编写好服务程序 会用Maven打成JAR包,放在Maven仓库里管理,我们在用的时候直接引用就可以, 那么如何在Gradle项目中使用本地的 或者远程的Maven仓库呢 当M ...
- Java(五、类和对象中的例题)
一.方法中的参数为数值型的(int) import java.util.Scanner; public class ScoreCalc { public void calc(int num1,int ...