Appium——api常用函数

appium常用函数介绍:

获取页面信息:

1、 def get_current_activity(cls, driver):

‘‘‘

获取当前页面的activity

:param driver:

:return:

‘‘‘

return driver.current_activity

2、 def get_current_pagesource(cls, driver):

‘‘‘

获取当前页面源码

:param driver:

:return: 返回数据类型为str

‘‘‘

return driver.page_source

3、 def get_contexts(cls, driver):

‘‘‘

获取当前窗口的所有context名称

:param driver:

:return: 返回当前所有窗口context,可以进行切换,switch_to_context()

‘‘‘

return driver.contexts

更多的api可以查看webdriver源码

获取元素:

在appium定位中已经介绍了几种常见的定位方式了,再介绍在appium中特殊的定位方式:

1、find_element_by_accessibility_id ,在uiautomatorviewer中,content-desc内容即为accessibility_id

2、find_elements_by_android_uiautomator,使用android内带的uiautomator来定位元素

①text属性

driver.find_element_by_android_uiautomator(‘new UiSelector().text("CustomView")‘).click()         #text

driver.find_element_by_android_uiautomator(‘new UiSelector().textContains("View")‘).click()        #textContains

driver.find_element_by_android_uiautomator(‘new UiSelector().textStartsWith("Custom")‘).click()    #textStartsWith

driver.find_element_by_android_uiautomator(‘new UiSelector().textMatches("^Custom.*")‘).click()    #textMatches

②class属性

driver.find_element_by_android_uiautomator(‘newUiSelector().className("android.widget.TextView").text("Custom View")‘).click()     #className

③resourceId属性

driver.find_element_by_android_uiautomator(‘newUiSelector().resourceId("android:id/text1")‘).click()     #resourceId

更多方法根据实际查找

控件操作:

1、输入

send_keys()

2、点击

单击:click()

3、滑动

driver.swipe(x1, y1, x2, y2), x1 y1为起始位置 x2 y2为结束位置

swipe还有个参数是滑动时间,duration

4、缩放

pinch() 默认缩小一半

zoom() 默认放大一倍

5、触摸

long_press() 长按

press() 短按

release() 释放

wait() 等待

cancel() 取消

perform() 执行

这种事件的操作跟selenium中webdriver一样,有个action类,在Appium中是TouchAction

action = TouchAction(driver)

action.long_press().wait(1000).perform() 默认单位是毫秒

6、android keyevent值

KEYCODE_UNKNOWN=0;

KEYCODE_SOFT_LEFT=1;

KEYCODE_SOFT_RIGHT=2;

KEYCODE_HOME=3;

KEYCODE_BACK=4;

KEYCODE_CALL=5;

KEYCODE_ENDCALL=6;

KEYCODE_0=7;

KEYCODE_1=8;

KEYCODE_2=9;

KEYCODE_3=10;

KEYCODE_4=11;

KEYCODE_5=12;

KEYCODE_6=13;

KEYCODE_7=14;

KEYCODE_8=15;

KEYCODE_9=16;

KEYCODE_STAR=17;

KEYCODE_POUND=18;

KEYCODE_DPAD_UP=19;

KEYCODE_DPAD_DOWN=20;

KEYCODE_DPAD_LEFT=21;

KEYCODE_DPAD_RIGHT=22;

KEYCODE_DPAD_CENTER=23;

KEYCODE_VOLUME_UP=24;

KEYCODE_VOLUME_DOWN=25;

KEYCODE_POWER=26;

KEYCODE_CAMERA=27;

KEYCODE_CLEAR=28;

KEYCODE_A=29;

KEYCODE_B=30;

KEYCODE_C=31;

KEYCODE_D=32;

KEYCODE_E=33;

KEYCODE_F=34;

KEYCODE_G=35;

KEYCODE_H=36;

KEYCODE_I=37;

KEYCODE_J=38;

KEYCODE_K=39;

KEYCODE_L=40;

KEYCODE_M=41;

KEYCODE_N=42;

KEYCODE_O=43;

KEYCODE_P=44;

KEYCODE_Q=45;

KEYCODE_R=46;

KEYCODE_S=47;

KEYCODE_T=48;

KEYCODE_U=49;

KEYCODE_V=50;

KEYCODE_W=51;

KEYCODE_X=52;

KEYCODE_Y=53;

KEYCODE_Z=54;

KEYCODE_COMMA=55;

KEYCODE_PERIOD=56;

KEYCODE_ALT_LEFT=57;

KEYCODE_ALT_RIGHT=58;

KEYCODE_SHIFT_LEFT=59;

KEYCODE_SHIFT_RIGHT=60;

KEYCODE_TAB=61;

KEYCODE_SPACE=62;

KEYCODE_SYM=63;

KEYCODE_EXPLORER=64;

KEYCODE_ENVELOPE=65;

KEYCODE_ENTER=66;

KEYCODE_DEL=67;

KEYCODE_GRAVE=68;

KEYCODE_MINUS=69;

KEYCODE_EQUALS=70;

KEYCODE_LEFT_BRACKET=71;

KEYCODE_RIGHT_BRACKET=72;

KEYCODE_BACKSLASH=73;

KEYCODE_SEMICOLON=74;

KEYCODE_APOSTROPHE=75;

KEYCODE_SLASH=76;

KEYCODE_AT=77;

KEYCODE_NUM=78;

KEYCODE_HEADSETHOOK=79;

KEYCODE_FOCUS=80;//*Camera*focus

KEYCODE_PLUS=81;

KEYCODE_MENU=82;

KEYCODE_NOTIFICATION=83;

KEYCODE_SEARCH=84;

KEYCODE_MEDIA_PLAY_PAUSE=85;

KEYCODE_MEDIA_STOP=86;

KEYCODE_MEDIA_NEXT=87;

KEYCODE_MEDIA_PREVIOUS=88;

KEYCODE_MEDIA_REWIND=89;

KEYCODE_MEDIA_FAST_FORWARD=90;

KEYCODE_MUTE=91;

其它相关:

1、reset() 重置应用,如首次登录app的导航页

2、is_app_installed() 判断app是否安装,返回布尔值

例如:使用微信登录时判断是否安装微信

3、install_app()

需要注意的是一个是app名字,而安装app给的参数是app路径

4、remove_app() 卸载app

5、close_app() 关闭app

6、wait_activity() 隐式等待 需要等待的activity 超时时间 检测时间间隔三个参数

7、get_screenshot_as_file() 截屏 保存图片路径

时间: 2025-01-05 17:32:37

Appium——api常用函数的相关文章

Windows API常用函数

转自:http://www.cnblogs.com/xiashengwang/p/4026259.html .NET中虽然类库很强,但还是有些时候功能有限,掌握常用的api函数, 会给我们解决问题提供另一种思路. 1.SetForegroundWindow 将窗口显示到最前面,前提是窗口没有最小化. [DIIImport("User32.dll")] public static extern bool SetForegroundWindow(IntPtrh Wnd); 2.ShowWi

VC API常用函数简单例子大全[转]

第一个:FindWindow根据窗口类名或窗口标题名来获得窗口的句柄,该函数返回窗口的句柄 函数的定义:HWND WINAPI FindWindow(LPCSTR lpClassName ,LPCSTR lpWindowName); 第一个参数填窗口的类名,第二个填窗口的标题名,其实是不需要同时填两个参数的,也就是说,你只要知道窗口的类名或窗口的标题就可以了,没有的那个就用NULL代替. 比如现在有一个窗口名为"无标题.txt - 记事本"的记事本程序.那么我就可以用上面的函数获得这个

中文Appium API 文档

该文档是Testerhome官方翻译的源地址:https://github.com/appium/appium/tree/master/docs/cn官方网站上的:http://appium.io/slate/cn/master/?ruby#about-appium 中文Appium API 文档 第一章:关于appium1.1 appium客户端客户端类库列表及Appium服务端支持 这些类库封装了标准Selenium客户端类库,为用户提供所有常见的JSON 格式selenium命令以及额外的

【COCOS CREATOR 系列教程之二】脚本开发篇&事件监听、常用函数等示例整合

[Cocos Creator ](千人群):  432818031 上一篇,介绍了Himi在使用过cc所有组件后的一篇总结,没有具体介绍每个组件的原因在于官方文档很齐全,而且也有视频的介绍. 所以希望童鞋们可以把我这两篇博文当成对组件.脚本两部分开发的整理与总结. 后续的文章,Himi应该主要更新一些官方还未补充或者还没有的教程.避免无用功. 下面直接放出代码,因为不是很难理解.所以不再一一赘述,都是常用的函数.事件监听.动作回调.定时器等开发过程中必接触的. 大致内容如下: cc 属性介绍 获

php缓存技术——memcache常用函数详解

php缓存技术——memcache常用函数详解 2016-04-07 aileen PHP编程 Memcache函数库是在PECL(PHP Extension Community Library)中,主要作用是搭建大容量的内存数据的临时存放区域,在分布式的时候作用体现的非常明显,否则不建议使用. memcache 函数所有的方法列表如下: 参考http://www.php.net/manual/zh/function.Memcache-add.php Memcache::add - 添加一个值,

MFC常用函数总结

1.MFC编辑框.静态文本框相关的常用函数 <1>GetDlgItemText(ID ,str) 作用:从对话框中获取文本 第一个参数为要获取的编辑框(或者静态文本框.单选按钮等可以显示内容的控件)的ID,第二个参数为字符串(Cstring 类型)的变量,获取的文本存储在str中. <2>SetDlgItemText(ID,str) 作用:将字符串显示在控件中 第一个参数为要显示的编辑框(或者静态文本框.单选按钮.组合框等可以显示内容的控件)的ID,第二个参数为字符串(Cstrin

Delphi 数据、文件常用函数

一.数据类型转换函数 在我们编写程序当中,根据不同情况,会使用到多种数据类型.当要对不同的类型进行操作时,必须要将不同的类型转换成同样的类型.因此熟练地掌握数据类型的转换是非常重要的. 1.FloatToStr 功能说明:该函数用于将"浮点型"转换成"字符型". 参考实例: Edit1.Text := FloatToStr(1.981); 2.IntToStr 功能说明:该函数用于将"整数型"转换成"字符型". 参考实例: S

常用函数汇总

这里先分类整理下,之前项目中多次用到的工具函数. 1.Array JavaScript 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 /** * * @desc 判断两个数组是否相等 * @param {Array} arr1 * @param {Array} arr2 * <a href='http://www.jobbole.com/members/wx1409399284'>@return</a> {Boolean} */ function arra

PHP 常用函数总结(二)

4.PHP处理数据库的常用函数. 汇总表 PHP 5 MySQLi 函数 函数 描述 mysqli_affected_rows() 返回前一个 Mysql 操作的受影响行数. mysqli_autocommit() 打开或关闭自动提交数据库修改功能. mysqli_change_user() 更改指定数据库连接的用户. mysqli_character_set_name() 返回数据库连接的默认字符集. mysqli_close() 关闭先前打开的数据库连接. mysqli_commit() 提