''.appium api第二弹 锋利的python,这是初稿,2015/1/5
如有错误的地方,请同学们进行留言,我会及时予以修改,尽量整合一份ok的api
作者:Mads Spiral QQ:79523822 如有疑问留言或者加qq,验证wyx
若要转载,请标注原著地址
'''
#默认系统语言对应的Strings.xml文件内的数据。
get_app_string()
#查找某一个语言环境对应的字符串文件Strings.xml内数据
get_app_string(String language)
#按下某个键,具体哪个键由key值决定,key值定义在AndroidKeyCode类中
send_key_event(int key)
#获取当前activity,比如(.ApiDemos)
current_activity()
#根据bundleId来判断该应用是否已经安装
is_app_installed(String bundleId)
#安装app,appPath为应用的本地路径
install_app(String appPath)
#卸载app.bundleId在
android中代表的是报名,而在ios中有专门的bundleId号。
remove_app(String bundleId)
#关闭应用,其实就是按home键把应用置于后台
close_app()
#启动应用
launch_app()
#先closeApp然后在launchAPP
reset_app()
#将字符数组用64位格式写到远程目录的某个文件中。也可以理解为把本地文件push到设备上。
push_file(String remotePath, byte[] base64Data)
#将设备上的文件pull到本地硬盘上
pull_file(String remotePath)
#将设备上的文件夹pull到本地硬盘上,一般远程文件为/data/local/tmp下的文件。
pull_folder(String remotePath)
#设置
手机的网络连接状态,可以开关蓝牙、wifi、数据流量。通过NetworkConnectionSetting中的属性来设置各个网络连接的状态。
set_network_connect(NetworkConnectionSetting connection)
#得到当前网络的状态
get_network_connection()
#ios隐藏键盘
hide_keyboard()
#隐藏键盘,只能用于ios上。
hide_keyboard(String strategy, String keyName)
#执行一个touch动作,该touch动作是由TouchAction封装的。
perform_touchAction(TouchAction touchAction)
#点击element控件中心点按下,duration*5毫秒秒后松开,如此重复fingers次。
tap(int fingers, WebElement element, int duration)
#点击(x,y)点按下,duration*5毫秒后松开,如此重复fingers次。
tap(int fingers, int x, int y, int duration)
#从(startx,starty)滑到(endx,endy),分duration步滑,每一步用时是5毫秒。
swipe(int startx, int starty, int endx, int endy, int duration)
#2个手指操作控件,从对角线向中心点滑动。
pinch(WebElement el)
#以(x,y)为基准,计算得出(x,y-100),(x,y+100)两个点,然后2个手指按住这两个点同时滑到(x,y)
pinch(int x, int y)
#与pinch(el)的动作刚好相反。两个手指由控件的中心点慢慢向控件的左顶点后右底点滑动。
zoom(WebElement el)
#和pinch(x,y)相反。两个手指从(x,y)点开始向(x,y-100)和(x,y+100)滑动。
zoom(int x, int y)
#锁屏多少秒后解锁
lock_screen(int seconds)
#模拟摇晃手机
shake()
#滚动到某个text属性为指定的字符串的控件
scroll_to(String text)
#滚动到某个text属性包含传入的字符串的控件
scroll_to_exact(String text)
#设置上下文
context(String name)
#可用上下文
get_context_handles()
#当前上下文
get_context()
#设置屏幕横屏或者竖屏
rotate(ScreenOrientation orientation)
#获取当前屏幕的方向
get_orientation()
#利用ios中的uiautomation中的属性来获取控件
find_element_by_ios_uiautomation(String using)
#和上面一样,不过获得的是多个控件
find_elements_by_ios_uiautomation(String using)
#利用android的uiautoamtor中的属性来获取单个控件。
find_element_by_android_uiautomator(String using)
#和上面一样,但是该方法获得是多个控件
find_elements_by_android_uiautomator(String using)
#利用accessibility id来获取单个控件
find_element_by_accessibilityid(String using)
#利用accessibility id来获得多个控件
find_elements_by_accessibilityid(String using)
'''AppiumDriver的辅助类,主要针对手势操作,比如滑动、长按、拖动等。
TouchAction的原理是讲一系列的动作放在一个链条中,然后将该链条传递给服务器。
服务器接受到该链条后,解析各个动作,逐个执行。'''
TouchAction()
#在控件上执行press操作
press(WebElement el)
#在坐标为(x,y)的点执行press操作
press(int x, int y)
#在控件el的左上角的x坐标偏移x单位,y左边偏移y单位的坐标上执行press操作。
press(WebElement el, int x, int y)
#释放操作,代表该系列动作的一个结束标志。
release()
move_to(WebElement el)
#以(x,y)点为目标,从另一个点移动到该目标上
move_to(WebElement el, int x, int y)
#在控件的中心点上敲击一下
tap(WebElement el)
#在(x,y)点轻击一下
tap(int x, int y)
#以控件el的左上角为基准,x轴向右移动x单位,y轴向下移动y单位。在该点上轻击。
tap(WebElement el, int x, int y)
#代表一个空操作,等待一段时间
wait_action()
#等待ms秒
wait_action(int ms)
#控件长按
long_press(WebElement el)
#点长按
long_press(int x, int y)
#偏移点长按
long_press(WebElement el, int x, int y)
#取消执行该动作
cancel()
#执行该动作
- 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使用总结!
将常用函数进行适用总结,后期在使用的过程中直接查找调用即可 获取界面属性.控件属性 1.current_activity:获取activity名称 device.current_activity 2. ...
- Appium常用API(一)
Appium作为当下一款移动应用的自动化测试工具,对于测试来说重要性不言可寓,废话不多说,下面总结下它常用的API: 1.contextscontexts(self): Returns the con ...
- 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 ...
随机推荐
- bzoj3884 上帝与集合的正确用法
a^b mod P=a^(b mod phi(p)) mod p,利用欧拉公式递归做下去. 代码 #pragma comment(linker,"/STACK:1024000000,1024 ...
- Vs2012编写C语言
本来我也是用VC++6.0编写C语言的,但是由于这个版本过老并且和win7,win8,win10的不兼容所以去下载了vs2012,一开始的时候不知道怎么用,现在学会了就写一个教程分享一下. 这时就遇到 ...
- vmware workstation unrecoverable error: (vmui)报错解决方法
实验室7月份刚换了电脑,之前一直用vmware来跑linux搞嵌入式开发,无论是宿舍的笔记本,还是之前用的旧台式机,都可以妥妥的跑vmware没有问题,结果换了新电脑之后,装上vmware works ...
- python for mysql
# -*- coding: utf-8 -*- '''python coded by written in 2016/8/31 Used for get win os log for each win ...
- windows下利用virtual 安装 flask
出处: https://segmentfault.com/a/1190000002450878 本文介绍Windows下如何从零开始搭建Python + Flask开发环境. 安装Python 2.7 ...
- leetcode 上的Counting Bits 总结
最近准备刷 leetcode 做到了一个关于位运算的题记下方法 int cunt = 0; while(temp) { temp = temp&(temp - 1); //把二进制最左边那 ...
- 【实践】js 如何实现动态添加文本节点
对于我这个js 小白来说 今天鼓起勇气做起了邮箱认证这个特效 但是这次不是想说如何实现这这个特效而是想记录一下特效当中的某个部分 那就是向元素节点动态添加文本节点 百度了一下动态添加文本节点的方式 是 ...
- switch 与 python字典
python 中并没有switch语句,但是有一个数据类型与switch语句特别相似,它就是 dict{ key: value, ...} 下面用 dict{ key:value,..} 来简单的实现 ...
- Oracle Partition By 的使用
1.概述 Parttion by 关键字是Oracle中分析性函数的一部分,它和聚合函数不同的地方在于它能够返回一个分组中的多条记录,儿聚合函数一般只有一条反映统计值的结果. 2.使用方式 场景:查询 ...
- 基于CNN的人脸相似度检测
人脸相似度检测主要是检测两张图片中人脸的相似度,从而判断这两张图片的对象是不是一个人. 在上一篇文章中,使用CNN提取人脸特征,然后利用提取的特征进行分类.而在人脸相似度检测的工作中,我们也可以利用卷 ...