跳至主要內容

Appium

getContext

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.getContext()
回傳
  • <Context> context: 一個表示目前內容的字串,或表示「無內容」的 null

switchContext

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.switchContext(name)
參數
名稱類型詳細資訊
name字串表示可用內容的字串

getContexts

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.getContexts()
回傳
  • <Context[]> contexts: 一個表示可用內容的字串陣列,例如 'WEBVIEW' 或 'NATIVE'

shake

在裝置上執行搖晃動作。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.shake()
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3)


lock

鎖定裝置。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.lock(seconds)
參數
名稱類型詳細資訊
seconds
選用
數字鎖定螢幕的時間長度 (僅限 iOS)
支援

Support for UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


unlock

解鎖裝置。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.unlock()
支援

Support for UiAutomator (4.2+) Support for Windows (10+)


isLocked

檢查裝置是否已鎖定。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.isLocked()
回傳
  • <boolean> isLocked: 如果裝置已鎖定則為 True,否則為 False
支援

Support for UiAutomator (4.2+) Support for Windows (10+)


startRecordingScreen

開始錄製螢幕。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.startRecordingScreen(options)
參數
名稱類型詳細資訊
options
選用
物件命令參數,可以包含諸如 remotePath、username、password、method、forceRestart、timeLimit、videoType、videoQuality、videoFps、bitRate、videoSize、bugReport 等鍵 (請參閱 Appium 文件中的更多描述)
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+) Support for Windows (10+)


stopRecordingScreen

停止錄製螢幕

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.stopRecordingScreen(remotePath, username, password, method)
參數
名稱類型詳細資訊
remotePath
選用
字串遠端位置的路徑,結果影片應上傳至該處。支援以下協定:http/https、ftp。只有在螢幕錄製程序進行中且 forceRestart 參數未設定為 true 時,此選項才會生效。Null 或空字串值 (預設設定) 表示結果檔案的內容應編碼為 Base64。
username
選用
字串遠端驗證的使用者名稱。
password
選用
字串遠端驗證的密碼。
method
選用
字串http 多部分上傳方法名稱。預設使用 'PUT'。
回傳
  • <string> response: Base64 編碼字串。如果設定了 remote_path,則回應為空字串
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+) Support for Windows (10+)


getPerformanceDataTypes

回傳系統狀態的資訊類型,支援讀取,例如 CPU、記憶體、網路流量和電池。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.getPerformanceDataTypes()
回傳
  • <string[]> performanceTypes: 可用的效能資料類型 (cpuinfo|batteryinfo|networkinfo|memoryinfo)
支援

Support for UiAutomator (4.2+)


getPerformanceData

回傳系統狀態的資訊,支援讀取,例如 CPU、記憶體、網路流量和電池。

Appium 命令。更多細節可以在官方協定文件中找到。

用法
driver.getPerformanceData(packageName, dataType, dataReadTimeout)
參數
名稱類型詳細資訊
packageName字串應用程式的套件名稱
dataType字串想要讀取的系統狀態類型。它應該是其中一種支援的效能資料類型
dataReadTimeout
選用
數字讀取嘗試次數
回傳
  • <string[]> performanceData: 系統狀態的資訊類型,支援讀取,例如 CPU、記憶體、網路流量和電池
支援

Support for UiAutomator (4.2+)


pressKeyCode

在裝置上按下特定的按鍵碼。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.pressKeyCode(keycode, metastate, flags)
參數
名稱類型詳細資訊
keycode數字要按下的按鍵碼
metastate
選用
數字按下按鍵碼時的 meta 狀態
flags
選用
數字按鍵事件的旗標
支援

Support for UiAutomator (4.2+)


longPressKeyCode

在裝置上長按特定的按鍵碼。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.longPressKeyCode(keycode, metastate, flags)
參數
名稱類型詳細資訊
keycode數字要在裝置上按下的按鍵碼
metastate
選用
數字按鍵事件的 meta 狀態
flags
選用
數字按鍵事件的旗標
支援

Support for UiAutomator (4.2+)


sendKeyEvent

傳送按鍵碼到裝置。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.sendKeyEvent(keycode, metastate)
參數
名稱類型詳細資訊
keycode字串要按下的按鍵碼
metastate
選用
字串按下按鍵碼時的 meta 狀態
支援

Support for UiAutomator (4.2+)


rotateDevice

在三個維度旋轉裝置。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.rotateDevice(x, y, z)
參數
名稱類型詳細資訊
x數字用於旋轉手勢中心的 x 軸偏移量
y數字用於旋轉手勢中心的 y 軸偏移量
z數字用於旋轉手勢中心的 z 軸偏移量
支援

Support for UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


getCurrentActivity

取得目前 Android 活動的名稱。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getCurrentActivity()
回傳值
  • <string> activity: 目前活動的名稱
支援

Support for UiAutomator (4.2+)


getCurrentPackage

取得目前 Android 套件的名稱。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getCurrentPackage()
回傳值
  • <string> package: 目前套件的名稱
支援

Support for UiAutomator (4.2+)


installApp

在裝置上安裝指定的應用程式。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.installApp(appPath)
參數
名稱類型詳細資訊
appPath字串應用程式 .apk 檔案的路徑
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


activateApp

在裝置上啟動指定的應用程式

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.activateApp(appId)
參數
名稱類型詳細資訊
appId字串應用程式 ID (Android 的套件 ID,iOS 的 Bundle ID)
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+)


removeApp

從裝置移除應用程式。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.removeApp(appId)
參數
名稱類型詳細資訊
appId字串應用程式 ID (Android 的套件 ID,iOS 的 Bundle ID)
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


terminateApp

終止裝置上指定的應用程式

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.terminateApp(appId)
參數
名稱類型詳細資訊
appId字串應用程式 ID (Android 的套件 ID,iOS 的 Bundle ID)
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+)


isAppInstalled

檢查指定的應用程式是否已安裝在裝置上。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.isAppInstalled(appId)
參數
名稱類型詳細資訊
appId字串應用程式 ID (Android 的套件 ID,iOS 的 Bundle ID)
回傳值
  • <boolean> isAppInstalled: 如果已安裝則回傳 true,如果未安裝則回傳 false
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


queryAppState

取得裝置上指定應用程式的狀態

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.queryAppState(appId)
參數
名稱類型詳細資訊
appId字串應用程式 ID (Android 的套件 ID,iOS 的 Bundle ID)
回傳值
  • <number> appStatus: 0 表示未安裝。1 表示未執行。2 表示在背景或暫停中執行。3 表示在背景執行。4 表示在前台執行
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+)


hideKeyboard

隱藏軟鍵盤。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.hideKeyboard(strategy, key, keyCode, keyName)
參數
名稱類型詳細資訊
strategy
選用
字串隱藏鍵盤的策略(僅限 UIAutomation),可用的策略有 - 'press'、'pressKey'、'swipeDown'、'tapOut'、'tapOutside'、'default'
key
選用
字串如果策略是 'pressKey',則為鍵值
keyCode
選用
字串如果策略是 'pressKey',則為按鍵碼
keyName
選用
字串如果策略是 'pressKey',則為按鍵名稱
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


isKeyboardShown

是否顯示軟鍵盤。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.isKeyboardShown()
回傳值
  • <boolean> isKeyboardShown: 若鍵盤顯示則為 True
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


pushFile

將檔案放置到裝置上的特定位置。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.pushFile(path, data)
參數
名稱類型詳細資訊
path字串要將資料安裝到的路徑
data字串base64 編碼的檔案內容
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


pullFile

從裝置檔案系統中擷取檔案。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.pullFile(path)
參數
名稱類型詳細資訊
path字串從裝置中擷取檔案的路徑
回傳值
  • <string> response: base64 編碼的檔案內容
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


pullFolder

從裝置檔案系統中擷取資料夾。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.pullFolder(path)
參數
名稱類型詳細資訊
path字串裝置上整個資料夾的路徑
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


toggleAirplaneMode

切換裝置上的飛航模式。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.toggleAirplaneMode()
支援

Support for UiAutomator (4.2+)


toggleData

切換數據服務的狀態。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.toggleData()
支援

Support for UiAutomator (4.2+)


toggleWiFi

切換 Wi-Fi 服務的狀態。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.toggleWiFi()
支援

Support for UiAutomator (4.2+)


toggleLocationServices

切換定位服務的狀態。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.toggleLocationServices()
支援

Support for UiAutomator (4.2+)


toggleNetworkSpeed

設定網路速度(僅限模擬器)

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.toggleNetworkSpeed(netspeed)
參數
名稱類型詳細資訊
netspeed字串網路類型 - 'full'、'gsm'、'edge'、'hscsd'、'gprs'、'umts'、'hsdpa'、'lte'、'evdo'
支援

Support for UiAutomator (4.2+)


openNotifications

開啟 Android 通知(僅限模擬器)。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.openNotifications()
支援

Support for UiAutomator (4.2+)


startActivity

透過提供套件名稱和活動名稱來啟動 Android 活動。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.startActivity(appPackage, appActivity, appWaitPackage, appWaitActivity, intentAction, intentCategory, intentFlags, optionalIntentArguments, dontStopAppOnReset)
參數
名稱類型詳細資訊
appPackage字串應用程式名稱
appActivity字串活動名稱
appWaitPackage
選用
字串要等待的應用程式名稱
appWaitActivity
選用
字串要等待的活動名稱
intentAction
選用
字串將用於啟動活動的 intent 動作
intentCategory
選用
字串將用於啟動活動的 intent 類別
intentFlags
選用
字串將用於啟動活動的旗標
optionalIntentArguments
選用
字串將用於啟動活動的其他 intent 引數
dontStopAppOnReset
選用
字串在透過 adb 啟動應用程式之前,不會停止測試中應用程式的進程
支援

Support for UiAutomator (4.2+)


getSystemBars

擷取狀態列和導覽列的顯示與邊界資訊。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.getSystemBars()
回傳值
  • <object[]> systemBars: 關於狀態列和導覽列的顯示與邊界資訊
支援

Support for UiAutomator (4.2+)


getDeviceTime

取得裝置上的時間。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.getDeviceTime()
回傳值
  • <string> time: 裝置上的時間
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


getDisplayDensity

從裝置取得顯示密度。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getDisplayDensity()
回傳值
  • <*> displayDensity: undefined
支援

Support for UiAutomator (4.2+)


touchId

模擬 Touch ID 事件(僅限 iOS 模擬器)。若要啟用此功能,必須將 allowTouchIdEnroll 期望功能設為 true,且模擬器必須已註冊。當您將 allowTouchIdEnroll 設為 true 時,預設會將模擬器設定為已註冊。註冊狀態可以切換。只有當 Appium 程序或其父應用程式(例如 Terminal.app 或 Appium.app)在「系統偏好設定」>「安全性與隱私權」>「隱私權」>「輔助使用」列表中具有 Mac OS 輔助使用權限時,此呼叫才會有效。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.touchId(match)
參數
名稱類型詳細資訊
match布林值我們是在模擬成功的觸摸 (true) 還是失敗的觸摸 (false)
支援

Support for XCUITest (9.3+)


toggleEnrollTouchId

切換模擬器是否已註冊以接受 Touch ID(僅限 iOS 模擬器)。若要啟用此功能,必須將 allowTouchIdEnroll 期望功能設為 true。當 allowTouchIdEnroll 設為 true 時,模擬器預設會註冊,而「切換 Touch ID 註冊」會變更註冊狀態。只有當 Appium 程序或其父應用程式(例如 Terminal.app 或 Appium.app)在「系統偏好設定」>「安全性與隱私權」>「隱私權」>「輔助使用」列表中具有 Mac OS 輔助使用權限時,此呼叫才會有效。

Appium 指令。更多詳細資訊請參閱官方協定文件

用法
driver.toggleEnrollTouchId(enabled)
參數
名稱類型詳細資訊
enabled
選用
布林值如果應該啟用 TouchID 註冊,則等於 true
支援

Support for XCUITest (9.3+)


launchApp

在裝置上啟動應用程式。

Appium 指令。更多詳細資訊請參考官方協定文件

注意

此協定指令已過時
對於 iOS,請使用 driver.execute('mobile: launchApp', { ... }),而對於 Android,請使用 driver.execute('mobile: activateApp', { ... })

用法
driver.launchApp()
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


closeApp

關閉裝置上的應用程式。

Appium 指令。更多詳細資訊請參考官方協定文件

注意

此協定指令已過時
請改用 driver.execute('mobile: terminateApp', { ... })

用法
driver.closeApp()
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


background

將目前此工作階段中執行的應用程式送到背景。

Appium 指令。更多詳細資訊請參考官方協定文件

注意

此協定指令已過時
請改用 driver.execute('mobile: backgroundApp', { ... })

用法
driver.background(seconds)
參數
名稱類型詳細資訊
seconds數字,null還原應用程式的逾時時間,如果為 'null',則不會還原應用程式
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


endCoverage

取得測試涵蓋率資料。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.endCoverage(intent, path)
參數
名稱類型詳細資訊
intent字串要廣播的 intent
path字串.ec 檔案的路徑
支援

Support for UiAutomator (4.2+)


getStrings

取得應用程式字串。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.getStrings(language, stringFile)
參數
名稱類型詳細資訊
language
選用
字串語言代碼
stringFile
選用
字串字串檔案的路徑
回傳值
  • <object> appStrings 應用程式中針對指定語言和字串檔名定義的所有字串
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


setValueImmediate

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.setValueImmediate(elementId, text)
參數
名稱類型詳細資訊
elementId字串先前呼叫 Find Element(s) 所回傳的元素 ID
text字串要設定到元素的文字
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+)


replaceValue

直接取代元素的值。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.replaceValue(elementId, value)
參數
名稱類型詳細資訊
elementId字串先前呼叫 Find Element(s) 所回傳的元素 ID
value字串要取代元素的值
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+)


getSettings

擷取裝置上的目前設定。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.getSettings()
回傳值
  • <object> settings 所有目前指定設定的 JSON 雜湊,請參閱 Settings API
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


updateSettings

更新裝置上的目前設定。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.updateSettings(settings)
參數
名稱類型詳細資訊
settings物件包含要更新的設定的鍵/值物件
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for UiAutomator (4.2+) Support for Windows (10+)


receiveAsyncResponse

用於非同步執行 JavaScript 的回呼 URL。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.receiveAsyncResponse(response)
參數
名稱類型詳細資訊
response物件要在裝置上接收的回應
支援

Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3)


gsmCall

撥打 GSM 電話(僅限模擬器)。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.gsmCall(phoneNumber, action)
參數
名稱類型詳細資訊
phoneNumber字串要撥打電話的電話號碼
action字串動作 - 'call'、'accept'、'cancel'、'hold'
支援

Support for UiAutomator (4.2+)


gsmSignal

設定 GSM 訊號強度(僅限模擬器)。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.gsmSignal(signalStrength, signalStrengh)
參數
名稱類型詳細資訊
signalStrength字串訊號強度範圍為 [0, 4]
signalStrengh
選用
字串訊號強度範圍為 [0, 4]。如果使用 Appium v1.11.0 或更低版本,也請設定此參數為相同的值(請參閱https://github.com/appium/appium/issues/12234)。
支援

Support for UiAutomator (4.2+)


powerCapacity

設定電池百分比(僅限模擬器)。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.powerCapacity(percent)
參數
名稱類型詳細資訊
percent數字範圍 [0, 100] 的百分比值
支援

Support for UiAutomator (4.2+)


powerAC

設定電池充電器為連線或未連線狀態(僅限模擬器)。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.powerAC(state)
參數
名稱類型詳細資訊
state字串設定狀態。開啟或關閉
支援

Support for UiAutomator (4.2+)


gsmVoice

設定 GSM 語音狀態(僅限模擬器)。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.gsmVoice(state)
參數
名稱類型詳細資訊
state字串GSM 語音的狀態 - 'unregistered'、'home'、'roaming'、'searching'、'denied'、'off'、'on'
支援

Support for UiAutomator (4.2+)


sendSms

模擬簡訊訊息(僅限模擬器)。

Appium 指令。更多詳細資訊請參考官方協定文件

用法
driver.sendSms(phoneNumber, message)
參數
名稱類型詳細資訊
phoneNumber字串要傳送簡訊的電話號碼
message字串簡訊訊息
支援

Support for UiAutomator (4.2+)


fingerPrint

在支援的模擬器上使用指紋掃描來驗證使用者。

Appium 指令。更多詳細資訊請參考官方協定文件

使用方式
driver.fingerPrint(fingerprintId)
參數
名稱類型詳細資訊
fingerprintId數字儲存在 Android Keystore 系統中的指紋 (從 1 到 10)
支援

Support for UiAutomator (4.2+)


setClipboard

設定系統剪貼簿的內容

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.setClipboard(content, contentType, label)
參數
名稱類型詳細資訊
content字串實際的 base64 編碼剪貼簿內容
contentType
選用
字串要取得的內容類型。純文字、影像、URL。Android 僅支援純文字
label
選用
字串Android 的剪貼簿資料標籤
回傳值
  • <string> response: 來自 Appium 伺服器的回應
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+)


getClipboard

取得系統剪貼簿的內容

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.getClipboard(contentType)
參數
名稱類型詳細資訊
contentType
選用
字串要取得的內容類型。純文字、影像、URL。Android 僅支援純文字
回傳值
  • <string> response: 以 base64 編碼的字串形式呈現的剪貼簿內容,如果剪貼簿為空,則為空字串
支援

Support for XCUITest (9.3+) Support for UiAutomator (4.2+)


touchPerform

此功能僅在原生環境中可用。 'Touch Perform' 的運作方式與其他單點觸控互動類似,但它允許您將多個觸控動作鏈結為一個命令。這很有用,因為 Appium 命令是透過網路傳送的,並且命令之間存在延遲。這種延遲可能會使某些觸控互動無法實現,因為某些互動需要以一個序列執行。例如,垂直滑動需要按下、移動到不同的 y 座標,然後釋放。為了使其工作,互動之間不能有延遲。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.touchPerform(actions)
參數
名稱類型詳細資訊
actionsobject[]要執行的動作類型 (例如 moveTo、release、press、tap、wait)
範例
// do a horizontal swipe by percentage
const startPercentage = 10;
const endPercentage = 90;
const anchorPercentage = 50;

const { width, height } = driver.getWindowSize();
const anchor = height * anchorPercentage / 100;
const startPoint = width * startPercentage / 100;
const endPoint = width * endPercentage / 100;
driver.touchPerform([
{
action: 'press',
options: {
x: startPoint,
y: anchor,
},
},
{
action: 'wait',
options: {
ms: 100,
},
},
{
action: 'moveTo',
options: {
x: endPoint,
y: anchor,
},
},
{
action: 'release',
options: {},
},
]);
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for Windows (10+)


multiTouchPerform

此功能僅在原生環境中可用。執行多點觸控動作序列。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.multiTouchPerform(actions)
參數
名稱類型詳細資訊
actionsobject[]要執行的動作類型 (例如 moveTo、release、press、tap、wait)
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+), UIAutomation (8.0 to 9.3) Support for Windows (10+)


executeDriverScript

此命令允許您將 WebdriverIO 腳本指定為字串,並將其傳輸到 Appium 伺服器,以便在伺服器本身上進行本機執行。此方法有助於最大程度地減少與每個命令相關的潛在延遲。若要將此命令與 Appium 2.0 一起使用,您必須安裝execute-driver-plugin外掛程式。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.executeDriverScript(script, type, timeout)
參數
名稱類型詳細資訊
script字串要執行的腳本。它可以存取代表附加到目前伺服器的 WebdriverIO 會話的 'driver' 物件。
type
選用
字串腳本中使用的語言/架構。目前僅支援 'webdriverio',並且為預設值。
timeout
選用
數字在 Appium 伺服器終止腳本執行之前,腳本應該允許執行的毫秒數。預設值為相當於 1 小時。
回傳值
  • <object> result: 包含兩個欄位的物件:'result',它是腳本本身的回傳值,以及 'logs',它包含 3 個內部欄位 'log'、'warn' 和 'error',它們會保留在腳本執行中由 console.log、console.warn 和 console.error 記錄的字串陣列。

getEvents

取得儲存在 Appium 伺服器中的事件。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.getEvents(type)
參數
名稱類型詳細資訊
typestring[]如果提供了類型,則取得使用該類型篩選的事件。
回傳值
  • <object> result: 事件的 JSON 雜湊,例如 {'commands' => [{'cmd' => 123455, ....}], 'startTime' => 1572954894127, }
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


logEvent

儲存自訂事件。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.logEvent(vendor, event)
參數
名稱類型詳細資訊
vendor字串供應商的名稱。它將是 vendor:event 中的 vendor
event字串事件的名稱。它將是 vendor:event 中的 event
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


compareImages

此功能利用 OpenCV 架構的功能執行影像比較。請注意,為了使此功能正常工作,必須在 Appium 伺服器運作的機器上安裝 OpenCV 架構和 opencv4nodejs 模組。此外,您需要安裝 images-plugin 外掛程式,才能將此功能與 Appium 2.0 一起使用。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.compareImages(mode, firstImage, secondImage, options)
參數
名稱類型詳細資訊
mode字串可能的比較模式之一:'matchFeatures'、'getSimilarity'、'matchTemplate'。 'matchFeatures' 為預設值。
firstImage字串影像資料。所有 OpenCV 函式庫本身接受的影像格式都受支援。
secondImage字串影像資料。所有 OpenCV 函式庫本身接受的影像格式都受支援。
options物件此字典的內容取決於實際的 mode 值。有關更多詳細資訊,請參閱 appium-support 模組的文件。
回傳值
  • <object> result: 結果字典的內容取決於實際的 modeoptions 值。有關更多詳細資訊,請參閱 appium-support 模組的文件。

implicitWait

設定驅動程式在搜尋元素時應等待的時間長度。在搜尋單個元素時,驅動程式應輪詢頁面,直到找到元素或逾時到期,以先發生者為準。在搜尋多個元素時,驅動程式應輪詢頁面,直到找到至少一個元素或逾時到期,屆時它應回傳一個空清單。如果從未傳送此命令,則驅動程式應預設為 0 毫秒的隱式等待。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.implicitWait(ms)
參數
名稱類型詳細資訊
ms數字在元素上等待的時間量 (以毫秒為單位)。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


getLocationInView

確定元素在捲動到檢視畫面後在螢幕上的位置。

注意:這被視為內部命令,僅應用於確定元素的位置,以便正確產生原生事件。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.getLocationInView(elementId)
參數
名稱類型詳細資訊
elementId字串要將命令路由到的元素的 ID
回傳值
  • <Object> location: 頁面上元素的 X 和 Y 座標。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


sendKeys

將一連串按鍵筆劃傳送到活動元素

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.sendKeys(value)
參數
名稱類型詳細資訊
valuestring[]要輸入的按鍵序列。必須提供陣列。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


availableIMEEngines

列出機器上所有可用的引擎。若要使用引擎,它必須存在於此清單中。

Appium 命令。更多詳細資訊請參閱官方協定文件

使用方式
driver.availableIMEEngines()
回傳值
  • <String[]> engines: 可用引擎的清單
支援

Support for UiAutomator (4.2+)


getActiveIMEEngine

取得目前啟用的輸入法引擎名稱。名稱字串會因平台而異。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getActiveIMEEngine()
回傳值
  • <字串> engine: 目前啟用的輸入法引擎名稱
支援

Support for UiAutomator (4.2+)


isIMEActivated

指出目前是否已啟用輸入法輸入

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.isIMEActivated()
回傳值
  • <布林值> isActive: 如果輸入法輸入可用且目前啟用,則為 true,否則為 false
支援

Support for UiAutomator (4.2+)


deactivateIMEEngine

停用目前啟用的輸入法引擎。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.deactivateIMEEngine()
支援

Support for UiAutomator (4.2+)


activateIMEEngine

啟用可用的輸入法引擎

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.activateIMEEngine(engine)
參數
名稱類型詳細資訊
engine字串要啟用的輸入法引擎名稱
支援

Support for UiAutomator (4.2+)


asyncScriptTimeout

設定由 /session/:sessionId/execute_async 執行的非同步腳本在中止並向用戶端返回 Timeout 錯誤之前,允許執行的時間長度(以毫秒為單位)。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.asyncScriptTimeout(ms)
參數
名稱類型詳細資訊
ms數字時間限制命令允許執行的時間長度(以毫秒為單位)
支援

Support for XCUITest (9.3+)


submit

提交表單元素。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.submit(elementId)
參數
名稱類型詳細資訊
elementId字串要提交的表單元素的 ID
支援

Support for XCUITest (9.3+)


getElementSize

判斷元素的尺寸(以像素為單位)。尺寸將以 JSON 物件的形式回傳,其中包含 widthheight 屬性。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getElementSize(elementId)
參數
名稱類型詳細資訊
elementId字串要將命令路由到的元素的 ID
回傳值
  • <物件> size: 元素的寬度和高度(以像素為單位)。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


getElementLocation

判斷元素在頁面上的位置。點 (0, 0) 指的是頁面的左上角。元素的座標會以 JSON 物件的形式回傳,其中包含 xy 屬性。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getElementLocation(elementId)
參數
名稱類型詳細資訊
elementId字串要將命令路由到的元素的 ID
回傳值
  • <Object> location: 頁面上元素的 X 和 Y 座標。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


touchClick

在觸控裝置上單擊。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.touchClick(element)
參數
名稱類型詳細資訊
element字串要單擊的元素的 ID。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


touchDown

手指在螢幕上按下。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.touchDown(x, y)
參數
名稱類型詳細資訊
x數字螢幕上的 x 座標
y數字螢幕上的 y 座標
支援

Support for UiAutomator (4.2+)


touchUp

手指在螢幕上抬起。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.touchUp(x, y)
參數
名稱類型詳細資訊
x數字螢幕上的 x 座標
y數字螢幕上的 y 座標
支援

Support for UiAutomator (4.2+)


touchMove

手指在螢幕上移動。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.touchMove(x, y)
參數
名稱類型詳細資訊
x數字螢幕上的 x 座標
y數字螢幕上的 y 座標
支援

Support for UiAutomator (4.2+)


touchLongClick

使用手指動作事件在觸控螢幕上長按。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.touchLongClick(element)
參數
名稱類型詳細資訊
element字串要長按的元素的 ID
支援

Support for UiAutomator (4.2+)


touchFlick

使用手指動作事件在觸控螢幕上滑動。此滑動命令從特定的螢幕位置開始。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.touchFlick(xoffset, yoffset, element, speed, xspeed, yspeed)
參數
名稱類型詳細資訊
xoffset
選用
數字滑動的 x 偏移量(以像素為單位)
yoffset
選用
數字滑動的 y 偏移量(以像素為單位)
element
選用
字串滑動開始的元素的 ID
speed
選用
數字速度(以像素/秒為單位)
xspeed
選用
數字x 軸速度(以像素/秒為單位)
yspeed
選用
數字y 軸速度(以像素/秒為單位)
支援

Support for UiAutomator (4.2+)


getOrientation

取得目前的裝置螢幕方向。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getOrientation()
回傳值
  • <字串> orientation: 目前的螢幕方向,對應於 ScreenOrientation 中定義的值:LANDSCAPE|PORTRAIT
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


setOrientation

設定裝置螢幕方向

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.setOrientation(orientation)
參數
名稱類型詳細資訊
orientation字串ScreenOrientation 中定義的新瀏覽器螢幕方向:`LANDSCAPE
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


getLogs

取得指定日誌類型的日誌。日誌緩衝區會在每次請求後重設。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getLogs(type)
參數
名稱類型詳細資訊
type字串日誌類型
回傳值
  • <物件陣列> logs: 日誌項目的清單。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)


getLogTypes

取得可用的日誌類型。

Appium 命令。更多詳細資訊請參閱官方協定文件

用法
driver.getLogTypes()
回傳值
  • <字串陣列> logTypes: 可用的日誌類型清單。
支援

Support for UiAutomator (4.2+) Support for XCUITest (9.3+)

歡迎!我能幫您什麼?

WebdriverIO AI Copilot