AppiumDriver java部分api
getAppStrings()
?
默認(rèn)系統(tǒng)語言對(duì)應(yīng)的Strings.xml文件內(nèi)的數(shù)據(jù)。
?
getAppStrings(String language)
?
查找某一個(gè)語言環(huán)境對(duì)應(yīng)的字符串文件Strings.xml內(nèi)數(shù)據(jù)
?
sendKeyEvent(int key)
?
按下某個(gè)鍵,具體哪個(gè)鍵由key值決定,key值定義在AndroidKeyCode類中
?
sendKeyEvent(int key, Integer metastate)
?
按下某個(gè)鍵的同時(shí)按下附加鍵(Ctrl/Alt/Shift等),具體是哪些鍵,由key值(AndroidKeyCode類中定義)和metastate(AndroidKeyMetastate類中定義)決定。
?
currentActivity()
?
獲取當(dāng)前activity,比如(.ApiDemos)
?
isAppInstalled(String bundleId)
?
根據(jù)bundleId來判斷該應(yīng)用是否已經(jīng)安裝
?
installApp(String appPath)
?
安裝app,appPath為應(yīng)用的本地路徑
?
removeApp(String bundleId)
?
卸載app.bundleId在android中代表的是報(bào)名,而在ios中有專門的bundleId號(hào)。
?
closeApp()
?
關(guān)閉應(yīng)用,其實(shí)就是按home鍵把應(yīng)用置于后臺(tái)
?
launchApp()
?
啟動(dòng)應(yīng)用
?
resetApp()
?
先closeApp然后在launchAPP
?
?pushFile(String remotePath, byte[] base64Data)
?
將字符數(shù)組用64位格式寫到遠(yuǎn)程目錄的某個(gè)文件中。也可以理解為把本地文件push到設(shè)備上。
?
pullFile(String remotePath)
?
將設(shè)備上的文件pull到本地硬盤上
?
pullFolder(String remotePath)
?
將設(shè)備上的文件夾pull到本地硬盤上,一般遠(yuǎn)程文件為/data/local/tmp下的文件。
?
setNetworkConnection(NetworkConnectionSetting connection)
?
設(shè)置手機(jī)的網(wǎng)絡(luò)連接狀態(tài),可以開關(guān)藍(lán)牙、wifi、數(shù)據(jù)流量。通過NetworkConnectionSetting中的屬性來設(shè)置各個(gè)網(wǎng)絡(luò)連接的狀態(tài)。
?
getNetworkConnection()
?
得到當(dāng)前網(wǎng)絡(luò)的狀態(tài)
?
openNotifications()
?
打開通知欄
?
runAppInBackground(int seconds)
?
與resetApp類似,區(qū)別是resetApp關(guān)閉后立即啟動(dòng),而這個(gè)方法是關(guān)閉后等待seconds秒后再啟動(dòng)。
?
hideKeyboard()
?
ios隱藏鍵盤
?
hideKeyboard(String strategy, String keyName)
?
隱藏鍵盤,只能用于ios上。
?
performTouchAction(TouchAction touchAction)
?
執(zhí)行一個(gè)touch動(dòng)作,該touch動(dòng)作是由TouchAction封裝的。
?
performMultiTouchAction(MultiTouchAction multiAction)
?
執(zhí)行多步touch動(dòng)作,由MultiTouchAction封裝的多步操作。
?
tap(int fingers, WebElement element, int duration)
?
點(diǎn)擊element控件中心點(diǎn)按下,duration*5毫秒秒后松開,如此重復(fù)fingers次。
?
tap(int fingers, int x, int y, int duration)
?
點(diǎn)擊(x,y)點(diǎn)按下,duration*5毫秒后松開,如此重復(fù)fingers次。
?
swipe(int startx, int starty, int endx, int endy, int duration)
?
從(startx,starty)滑到(endx,endy),分duration步滑,每一步用時(shí)是5毫秒。
?
pinch(WebElement el)
?
2個(gè)手指操作控件,從對(duì)角線向中心點(diǎn)滑動(dòng)。
?
pinch(int x, int y)
?
以(x,y)為基準(zhǔn),計(jì)算得出(x,y-100),(x,y+100)兩個(gè)點(diǎn),然后2個(gè)手指按住這兩個(gè)點(diǎn)同時(shí)滑到(x,y)
?
zoom(WebElement el)
?
與pinch(el)的動(dòng)作剛好相反。兩個(gè)手指由控件的中心點(diǎn)慢慢向控件的左頂點(diǎn)后右底點(diǎn)滑動(dòng)。
?
zoom(int x, int y)
?
和pinch(x,y)相反。兩個(gè)手指從(x,y)點(diǎn)開始向(x,y-100)和(x,y+100)滑動(dòng)。
?
getNamedTextField(String name)
?
一般用在ios中。根據(jù)accessibility id獲得控件對(duì)象。
?
endTestCoverage(String intent, String path)
?
結(jié)束測(cè)試覆蓋率的檢測(cè)。(沒用過,不太了解)path為.ec文件的路徑。
?
lockScreen(int seconds)
?
鎖屏多少秒后解鎖(使用的時(shí)候提示還沒實(shí)現(xiàn)該方法)
?
shake()
?
模擬搖晃手機(jī)(目前還沒實(shí)現(xiàn))
?
scrollTo(String text)
?
滾動(dòng)到某個(gè)text屬性為指定的字符串的控件
?
scrollToExact(String text)
?
滾動(dòng)到某個(gè)text屬性包含傳入的字符串的控件
?
context(String name)
?
設(shè)置上下文
?
getContextHandles()
?
可用上下文
?
getContext()
?
當(dāng)前上下文
?
rotate(ScreenOrientation orientation)
?
設(shè)置屏幕橫屏或者豎屏
?
getOrientation()
?
獲取當(dāng)前屏幕的方向
?
findElementByIosUIAutomation(String using)
?
利用ios中的uiautomation中的屬性來獲取控件
?
findElementsByIosUIAutomation(String using)
?
和上面一樣,不過獲得的是多個(gè)控件
?
findElementByAndroidUIAutomator(String using)
?
利用android的uiautoamtor中的屬性來獲取單個(gè)控件。
?
findElementsByAndroidUIAutomator(String using)
?
和上面一樣,但是該方法獲得是多個(gè)控件
?
findElementByAccessibilityId(String using)
?
利用accessibility id來獲取單個(gè)控件
?
findElementsByAccessibilityId(String using)
?
利用accessibility id來獲得多個(gè)控件
?
轉(zhuǎn)載于:https://www.cnblogs.com/xiaoluosun/p/4689970.html
總結(jié)
以上是生活随笔為你收集整理的AppiumDriver java部分api的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android MediaPlayer
- 下一篇: 喷水装置(一)--nyoj题目6