锁定

锁定屏幕

# python
driver.lock(5)

将 app 置于后台

把当前应用放到后台去

# python
driver.background_app(5)

收起键盘

收起键盘

# python
driver.hide_keyboard()

打开通知栏 (Notifications)

打开下拉通知栏 只能在 Android 上使用

# python
driver.open_notifications()

是否已经安装

检查应用是否已经安装

# python
driver.is_app_installed('com.example.android.apis')

安装应用

安装应用到设备中去

# python
driver.install_app('path/to/my.apk')

删除应用

从设备中删除一个应用

# python
driver.remove_app('com.example.android.apis')

摇晃 (Shake)

模拟设备摇晃

# python
driver.shake()

启动 Activity

在当前应用中打开一个 activity 或者启动一个新应用并打开一个 activity 。 只能在 Android 上使用

# python
driver.start_activity('com.example.android.apis', '.Foo')

当前 Activity

获取当前 activity。只能在 Android 上使用

# python
driver.current_activity
 

启动 (Launch)

根据服务关键字 (desired capabilities) 启动会话 (session) 。请注意这必须在设定 autoLaunch=false 关键字时才能生效。这不是用于启动指定的 app/activities ————你可以使用 start_activity 做到这个效果————这是用来继续进行使用了 autoLaunch=false 关键字时的初始化 (Launch) 流程的。

# python
driver.launch_app()

关闭应用

关闭应用

# python
driver.close_app();

重置 (Reset)

应用重置(相当于卸载重装应用)

# python
driver.reset()

可用上下文 (context)

列出所有的可用上下文

翻译备注:context可以理解为 可进入的窗口 。例如,对于原生应用,可用的context和默认context均为NATIVE_APP。详情可查看对混合应用进行自动化测试

# python
driver.contexts

当前上下文 (context)

列出当前上下文

# python
driver.current_context

切换到默认的上下文 (context)

将上下文切换到默认上下文

# python
driver.switch_to.context(None)

应用的字符串 (App Strings)

获取应用的字符串

# python
driver.app_strings

按键事件 (Key Event)

给设备发送一个按键事件

# python
driver.keyevent(176)

触摸动作(TouchAction) / 多点触摸动作(MultiTouchAction)

生成触摸动作的接口。这部分文档很快将会补充更多的内容进来。

# python
action = TouchAction(driver)
action.press(element=el, x=10, y=10).release().perform()

滑动(Swipe)

模拟用户滑动

# python
driver.swipe(start=75, starty=500, endx=75, endy=0, duration=800)

捏 (Pinch)

捏屏幕 (双指往内移动来缩小屏幕)

# python
driver.pinch(element=el)

放大 (Zoom)

放大屏幕 (双指往外移动来放大屏幕)

# python
driver.zoom(element=el)

滑动到 (Scroll To)

滑动到某个元素。

# python
todo: python

拉出文件 (Pull File)

从设备中拉出文件

# python
driver.pull_file('Library/AddressBook/AddressBook.sqlitedb')

推送文件(Push file)

推送文件到设备中去

# python
data = "some data for the file"
path = "/data/local/tmp/file.txt"
driver.push_file(path, data.encode('base64'))

设置

从这里你可以获取/设置 appium 的服务器设置。 想知道它如何工作,以及它支持哪些设置,请查看关于设置的文档

current_settings = driver.get_settings()
driver.update_settings({"someSetting": true})
												

Appium绑定的更多相关文章

  1. appium Capabilities的各个标签

    今天详解一下Capabilities的各个标签,以后如果用得着可以随时翻阅. General Capabilities 标签 概述 值 automationName 使用引擎 默认为Appium,其中 ...

  2. Appium原理

    Appium原理小结 Api接口调用selenium的接口,android底层用android的instrumentation(API2.3+ 通过绑定另外一个独立的selendroid项目来实现的) ...

  3. Appium官网Introduction

    英文官网:http://appium.io/introduction.html?lang=zh Appium 简介 Appium是一个开源的自动化测试工具,其支持iOS和安卓平台上的原生的,基于移动浏 ...

  4. appium 并发测试

    Android并发测试 Appium提供了在一台设备上启动多个Android会话的方案,而这个方案需要你输入不同的指令来启动多个Appium服务来实现. 启动多个Android会话的重要指令包括: - ...

  5. appium 真机测试问题 出现 instruments crashed on startup

    1.appium 真机测试的时候 instruments crashed on startup,必须在真机上打开UI Automation 在设置里: Developer->Enable UI ...

  6. (转载)中文Appium API 文档

    该文档是Testerhome官方翻译的源地址:https://github.com/appium/appium/tree/master/docs/cn官方网站上的:http://appium.io/s ...

  7. appium随笔

    目录结构如下: Test_edaike---page object设计思想 定位元素和脚本分离Images目录---用例失败截图case目录 eTestfastfood.py---定位app界面元素& ...

  8. Appium Desktop 介绍及使用

    一.AppiumDesktop介绍 1.Appium-server的图形界面.可以设置选项.启动/停止服务器.查看日志等功能:且无须提前安装Node / NPM,因为Node运行时直接与Appium ...

  9. Appium原理及版本变化细节

    Appium原理小结 Api接口调用selenium的接口,Android底层用android的instrumentation(API2.3+ 通过绑定另外一个独立的selendroid项目来实现的) ...

随机推荐

  1. 洛谷 P2670 扫雷游戏==Codevs 5129 扫雷游戏

    题目描述 扫雷游戏是一款十分经典的单机小游戏.在n行m列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格).玩家翻开一个非地雷格时,该格将会出现一个数字——提示周围格子中有 ...

  2. 如何查找在CDN下的真实ip

    今天去找了一下www.bilibili.tv的IP(为什么要这样子做见),发现www.bilibili.tv使用了CDN服务直接ping找不到其真实IP(实际上不用找也可以但就是想找一下). 那我们应 ...

  3. mysql max_allowed_packet自动重置为1024 终结解决

    背景: 测试环境1台centOS机器,最近一段频繁报“ Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too ...

  4. jQuery1.9 $.browser 的替代方法

    jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support . 在更新的 2.0 版本中,将不再支持 IE 6/7/8. ...

  5. Freemarker例子

    1.引入架包 2.写ftl文件 3.代码 hello.ftl 你好啊,${hello},今天你的精神不错! if else 语句测试 <#if num gt 18><#-- 不使用 ...

  6. openerp经典收藏 对象的预定义方法(转载)

    对象的预定义方法 原文:http://shine-it.net/index.php/topic,2159.15.html 每个OpenERP的对象都有一些预定义方法,这些方法定义在基类osv.osv中 ...

  7. MATLAB plot画线的颜色设定

    plot中画线的颜色通常是八种: 标记符    颜色r          红g          绿b          蓝c          蓝绿m          紫红y          黄 ...

  8. MySQL 主键冲突,无法插入数据

    数据库版本:5.6.16 问题:开发来电话说仓库无法下单,程序插入数据提示:入库单 xxxx1589762285确认失败:Duplicate entry '8388607' for key 'PRIM ...

  9. ES5中的有9个Array方法

    Array.prototype.indexOf Array.prototype.lastIndexOf Array.prototype.every Array.prototype.some Array ...

  10. Memcache+Tomcat9集群实现session共享(非jar式配置, 手动编写Memcache客户端)

    Windows上两个tomcat, 虚拟机中ip为192.168.0.30的centos上一个(测试用三台就够了, 为了测试看见端口所以没有使用nginx转发请求) 开始 1.windows上开启两个 ...