将常用函数进行适用总结,后期在使用的过程中直接查找调用即可

获取界面属性、控件属性

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使用总结!的更多相关文章

  1. 7、Appium常用API

    嗯,官网已经介绍的很全了.会选几个常用API后期整理. Appium常用API地址:http://appium.io/docs/cn/writing-running-appium/appium-bin ...

  2. Appium常用API(二)

    接前面的常用API(一),本文接着介绍如下: 1.press_keycode press_keycode(self, keycode, metastate=None): Sends a keycode ...

  3. appium 常用api介绍(2)

    前言:接着上一篇继续讲常用的一些api 参考博文:http://blog.csdn.net/bear_w/article/details/50330565 1.send_keys send_keys( ...

  4. Appium常用API(一)

    Appium作为当下一款移动应用的自动化测试工具,对于测试来说重要性不言可寓,废话不多说,下面总结下它常用的API: 1.contextscontexts(self): Returns the con ...

  5. appium 常用API

    ''.appium api第二弹 锋利的python,这是初稿,2015/1/5 如有错误的地方,请同学们进行留言,我会及时予以修改,尽量整合一份ok的api 作者:Mads Spiral QQ:79 ...

  6. appium 常用api介绍(1)

    前言:android手机大家都很熟悉,操作有按键.触摸.点击.滑动等,各种操作方法可以通过api的方法来实现. 参考博文:http://blog.csdn.net/bear_w/article/det ...

  7. Appium常用Api实操

    本文是基于python语言在android上实操的,仅记录(忽略排版~~~) 会不时更新的: from appium import webdriver from selenium.webdriver. ...

  8. APPIUM 常用API介绍(3)

    1.send_keys send_keys(self, *value): Simulates typing into the element[在元素中模拟输入(开启appium自带的输入法并配置了ap ...

  9. Appium之常用API

    Appium常用API解析 1.current_activity:获取当前页面的activity名,比如com.taobao.tao.TBMainActivity 或 com.taobao.brows ...

随机推荐

  1. 轻松解决oracle11g 空表不能exp导出的问题

    轻松解决oracle11g 空表不能exp导出的问题 [引用 2012-9-22 18:06:36]     字号:大 中 小 oracle11g的新特性,数据条数是0时不分配segment,所以就不 ...

  2. 关于JQuery Class选择器的一点

    当某个元素的Class为为两个字符串的时候,那用class选择器的时候就必须把两个字符串都写上否则无效 <div class="cla clb">11111<di ...

  3. DjangoRestFramework实践笔记

    1.Restful服务的实现方式一共三种:function based view,class based view,viewset+router,这三种实现方式的封装重度依序升高,越往后越适合典型CU ...

  4. PHP实现单例模式和观察者模式

    单例模式的实现: PHP中单例模式常用在数据库连接部分,省掉了大量的new操作进而节省了很多资源.单例模式还可以用在全局配置类中. 单例模式,顾名思义就是说只有一个实例,这就要求防止外部随意实例化对象 ...

  5. python3学习笔记4---引用http://python3-cookbook.readthedocs.io/zh_CN/latest/

    2018-03-01数据结构与算法(4) 1.16过滤序列元素 最简单的过滤序列元素的方法就是使用列表推导.比如: >>> mylist = [1, 4, -5, 10, -7, 2 ...

  6. Ocelot中文文档-缓存

    目前Ocelot使用CacheManager项目提供了一些非常基本的缓存.这是一个了不起的项目,它解决了很多缓存问题. 我会推荐这个软件包来做Ocelot缓存. 如果你看看这里的例子,你可以看到如何设 ...

  7. java类定义、变量类型、构造函数

    1.java类class的定义 所有java程序都以类class为组织单元,java类由属性和方法组成,下面看例子: public  class  Phone{ //属性 String company ...

  8. YOLO_Online 将深度学习最火的目标检测做成在线服务实战经验分享

    YOLO_Online 将深度学习最火的目标检测做成在线服务 第一次接触 YOLO 这个目标检测项目的时候,我就在想,怎么样能够封装一下让普通人也能够体验深度学习最火的目标检测项目,不需要关注技术细节 ...

  9. PCA算法和python实现

    第十三章 利用PCA来简化数据 一.降维技术 当数据的特征很多的时候,我们把一个特征看做是一维的话,我们数据就有很高的维度.高维数据会带来计算困难等一系列的问题,因此我们需要进行降维.降维的好处有很多 ...

  10. Key-Value Store Indexer(Lily HBase Indexer) 小型采坑

    环境: Cloudera Express 5.12.1 JDK 1.8.0_92 CentOS 7 步骤1:数据导入到Hbase中(非正题,跳过) hbase中表为allDoc,两个Family:fu ...