Appium——api常用函数
生活随笔
收集整理的這篇文章主要介紹了
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() 截屏 保存圖片路徑
轉載于:https://www.cnblogs.com/dreamyu/p/8038970.html
總結
以上是生活随笔為你收集整理的Appium——api常用函数的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 矩阵按键之行列式扫描
- 下一篇: Effective C++: 06继承与