標籤:
‘‘.appium api第二彈 鋒利的python,這是初稿,2015/1/5
如有錯誤的地方,請同學們進行留言,我會及時予以修改,盡量整合一份ok的apiMads 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然後在launchAPPreset_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()#以el為目標,從另一個點
移動到該目標上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()#執行該動作
appium 常用API