AppiumDriver java部分api
getAppStrings()
?
默認系統語言對應的Strings.xml文件內的數據。
?
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來獲得多個控件
?
轉載于:https://www.cnblogs.com/xiaoluosun/p/4689970.html
總結
以上是生活随笔為你收集整理的AppiumDriver java部分api的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android MediaPlayer
- 下一篇: 喷水装置(一)--nyoj题目6