標籤:
(本篇轉載自:http://m.blog.csdn.net/blog/qhshiniba/38043631)
AppiumDriver
getAppStrings()
預設系統語言對應的Strings.xml檔案內的資料。
driver.getAppStrings(String language)
尋找某一個語言環境對應的字串檔案Strings.xml內資料
sendKeyEvent(int key)
按下某個鍵,具體哪個鍵由key值決定,key值定義在AndroidKeyCode類中
sendKeyEvent(int key, Integer metastate)
按下某個鍵的同步選取附加鍵(Ctrl/Alt/Shift等),具體是哪些鍵,由key值(AndroidKeyCode類中定義)和metastate(AndroidKeyMetastate類中定義)決定。
currentActivity()
擷取當前activity,比如(.ApiDemos)
isAppInstalled(String bundleId)
根據bundleId來判斷該應用是否已經安裝
installApp(String appPath)
安裝app,appPath為應用的本地路徑
removeApp(String bundleId)
卸載app.bundleId在android中代表的是報名,而在ios中有專門的bundleId號。
closeApp()
關閉應用,其實就是按home鍵把應用置於後台
launchApp()
啟動應用
resetApp()
先closeApp然後在launchAPP
pushFile(String remotePath, byte[] base64Data)
將字元數組用64位格式寫到遠程目錄的某個檔案中。也可以理解為把本地檔案push到裝置上。
pullFile(String remotePath)
將裝置上的檔案pull到本地硬碟上
pullFolder(String remotePath)
將裝置上的檔案夾pull到本地硬碟上,一般遠程檔案為/data/local/tmp下的檔案。
setNetworkConnection(NetworkConnectionSetting connection)
設定手機的網路連接狀態,可以開關藍芽、wifi、資料流量。通過NetworkConnectionSetting中的屬性來設定各個網路連接的狀態。
getNetworkConnection()
得到當前網路的狀態
openNotifications()
開啟通知欄
runAppInBackground(int seconds)
與resetApp類似,區別是resetApp關閉後立即啟動,而這個方法是關閉後等待seconds秒後再啟動。
hideKeyboard()
ios隱藏鍵盤
hideKeyboard(String strategy, String keyName)
隱藏鍵盤,只能用於ios上。
performTouchAction(TouchAction touchAction)
執行一個touch動作,該touch動作是由TouchAction封裝的。
performMultiTouchAction(MultiTouchAction multiAction)
執行多步touch動作,由MultiTouchAction封裝的多步操作。
tap(int fingers, WebElement element, int duration)
點擊element控制項中心點按下,duration*5毫秒秒後鬆開,如此重複fingers次。
tap(int fingers, int x, int y, int duration)
點擊(x,y)點按下,duration*5毫秒後鬆開,如此重複fingers次。
swipe(int startx, int starty, int endx, int endy, int duration)
從(startx,starty)滑到(endx,endy),分duration步滑,每一步用時是5毫秒。
pinch(WebElement el)
2個手指操作控制項,從對角線向中心點滑動。
pinch(int x, int y)
以(x,y)為基準,計算得出(x,y-100),(x,y+100)兩個點,然後2個手指按住這兩個點同時滑到(x,y)
zoom(WebElement el)
與pinch(el)的動作剛好相反。兩個手指由控制項的中心點慢慢向控制項的左頂點後右底點滑動。
zoom(int x, int y)
和pinch(x,y)相反。兩個手指從(x,y)點開始向(x,y-100)和(x,y+100)滑動。
getNamedTextField(String name)
一般用在ios中。根據accessibility id獲得控制項對象。
endTestCoverage(String intent, String path)
結束測試覆蓋率的檢測。(沒用過,不太瞭解)path為.ec檔案的路徑。
lockScreen(int seconds)
鎖屏多少秒後解鎖(使用的時候提示還沒實現該方法)
shake()
類比搖晃手機(目前還沒實現)
scrollTo(String text)
滾動到某個text屬性為指定的字串的控制項
scrollToExact(String text)
滾動到某個text屬性包含傳入的字串的控制項
context(String name)
設定上下文
getContextHandles()
可用上下文
getContext()
當前上下文
rotate(ScreenOrientation orientation)
設定螢幕橫屏或者豎屏
getOrientation()
擷取當前螢幕的方向
findElementByIosUIAutomation(String using)
利用ios中的uiautomation中的屬性來擷取控制項
findElementsByIosUIAutomation(String using)
和上面一樣,不過獲得的是多個控制項
findElementByAndroidUIAutomator(String using)
利用android的uiautoamtor中的屬性來擷取單個控制項。
findElementsByAndroidUIAutomator(String using)
和上面一樣,但是該方法獲得是多個控制項
findElementByAccessibilityId(String using)
利用accessibility id來擷取單個控制項
findElementsByAccessibilityId(String using)
利用accessibility id來獲得多個控制項
(轉載)Appium之java API