跳到主要内容

Appium

getAppiumContext

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getAppiumContext()
返回
  • <Context> context: 一个表示当前上下文的字符串或表示"无上下文"的 null

switchAppiumContext

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.switchAppiumContext(name)
参数
名称类型详情
namestring表示可用上下文的字符串

getAppiumContexts

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getAppiumContexts()
返回
  • <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
可选
number锁定屏幕的时间长度(仅限 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
可选
object命令参数,可以包含以下键: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
可选
string应上传结果视频的远程位置路径。支持以下协议:http/https、ftp。此选项仅在有屏幕录制过程正在进行且 forceRestart 参数未设置为 true 时有效。空值或空字符串(默认设置)表示结果文件的内容应编码为 Base64。
username
可选
string远程认证的用户名。
password
可选
string远程认证的密码。
method
可选
stringhttp 多部分上传方法名称。默认使用 '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)
参数
名称类型详情
packageNamestring应用程序的包名
dataTypestring想要读取的系统状态类型。应该是支持的性能数据类型之一
dataReadTimeout
可选
number读取尝试次数
返回
  • <string[]> performanceData: 系统状态支持读取的信息类型,如 CPU、内存、网络流量和电池
支持

Support for UiAutomator (4.2+)


pressKeyCode

在设备上按特定键。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.pressKeyCode(keycode, metastate, flags)
参数
名称类型详情
keycodenumber要按的键码
metastate
可选
number与键码一起按下的元状态
flags
可选
number键按下的标志
支持

Support for UiAutomator (4.2+)


longPressKeyCode

在设备上按住特定键码。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.longPressKeyCode(keycode, metastate, flags)
参数
名称类型详情
keycodenumber在设备上按的键码
metastate
可选
number键按下的元状态
flags
可选
number键按下的标志
支持

Support for UiAutomator (4.2+)


sendKeyEvent

向设备发送键码。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.sendKeyEvent(keycode, metastate)
参数
名称类型详情
keycodestring要按的键码
metastate
可选
string与键码一起按下的元状态
支持

Support for UiAutomator (4.2+)


rotateDevice

在三维空间中旋转设备。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.rotateDevice(x, y, z)
参数
名称类型详情
xnumber用于旋转手势中心的 x 偏移量
ynumber用于旋转手势中心的 y 偏移量
znumber用于旋转手势中心的 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)
参数
名称类型详情
appPathstring应用程序 .apk 文件的路径
支持

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


activateApp

在设备上激活给定的应用

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.activateApp(appId)
参数
名称类型详情
appIdstring应用 ID(Android 的包 ID,iOS 的捆绑 ID)
支持

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


removeApp

从设备中移除应用。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.removeApp(appId)
参数
名称类型详情
appIdstring应用 ID(Android 的包 ID,iOS 的捆绑 ID)
支持

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


terminateApp

终止设备上的给定应用

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.terminateApp(appId, options)
参数
名称类型详情
appIdstring应用 ID(Android 的包 ID,iOS 的捆绑 ID)
options
可选
object命令选项。例如 "timeout":(仅 Android)重试终止应用的超时时间(详见 Appium 文档)
支持

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


isAppInstalled

检查设备上是否安装了指定的应用。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.isAppInstalled(appId)
参数
名称类型详情
appIdstring应用 ID(Android 的包 ID,iOS 的捆绑 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)
参数
名称类型详情
appIdstring应用 ID(Android 的包 ID,iOS 的捆绑 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
可选
string隐藏键盘策略(仅 UIAutomation),可用策略 - 'press', 'pressKey', 'swipeDown', 'tapOut', 'tapOutside', 'default'
key
可选
string如果策略是 'pressKey' 则为键值
keyCode
可选
string如果策略是 'pressKey' 则为键码
keyName
可选
string如果策略是 '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)
参数
名称类型详情
pathstring安装数据的路径
datastringbase64 格式的文件内容
支持

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)
参数
名称类型详情
pathstring设备上拉取文件的路径
返回
  • <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)
参数
名称类型详情
pathstring设备上整个文件夹的路径
支持

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

切换 WiFi 服务的状态。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.toggleWiFi()
支持

Support for UiAutomator (4.2+)


toggleLocationServices

切换位置服务的状态。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.toggleLocationServices()
支持

Support for UiAutomator (4.2+)


toggleNetworkSpeed

设置网络速度(仅模拟器)

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.toggleNetworkSpeed(netspeed)
参数
名称类型详情
netspeedstring网络类型 - '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)
参数
名称类型详情
appPackagestring应用名称
appActivitystring活动名称
appWaitPackage
可选
string等待的应用名称
appWaitActivity
可选
string等待的活动名称
intentAction=android.intent.action.MAIN
可选
string用于启动活动的意图操作
intentCategory=android.intent.category.LAUNCHER
可选
string用于启动活动的意图类别
intentFlags=0x10200000
可选
string用于启动活动的标志
optionalIntentArguments
可选
string用于启动活动的额外意图参数
dontStopAppOnReset
可选
string在使用 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()
返回
  • <*>
支持

Support for UiAutomator (4.2+)


touchId

模拟 touch id 事件(仅限 iOS 模拟器)。要启用此功能,必须将 allowTouchIdEnroll 所需能力设置为 true,并且模拟器必须已注册。当您将 allowTouchIdEnroll 设置为 true 时,它会默认将模拟器设置为已注册。注册状态可以切换。此调用仅在 Appium 进程或其父应用程序(例如 Terminal.app 或 Appium.app)在系统偏好设置 > 安全与隐私 > 隐私 > 辅助功能列表中有权访问 Mac OS 辅助功能时才能工作。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchId(match)
参数
名称类型详情
matchboolean我们是模拟成功的触摸 (true) 还是失败的触摸 (false)
支持

Support for XCUITest (9.3+)


toggleEnrollTouchId

切换模拟器是否已注册以接受 touchId(仅限 iOS 模拟器)。要启用此功能,必须将 allowTouchIdEnroll 所需能力设置为 true。当 allowTouchIdEnroll 设置为 true 时,模拟器将默认注册,而"切换 Touch ID 注册"会更改注册状态。此调用仅在 Appium 进程或其父应用程序(例如 Terminal.app 或 Appium.app)在系统偏好设置 > 安全与隐私 > 隐私 > 辅助功能列表中有权访问 Mac OS 辅助功能时才能工作。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.toggleEnrollTouchId(enabled)
参数
名称类型详情
enabled=true
可选
boolean如果应启用 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=nullnumber, null恢复应用的超时时间,如果为 'null' 则不会恢复应用
支持

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


endCoverage

获取测试覆盖率数据。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.endCoverage(intent, path)
参数
名称类型详情
intentstring要广播的意图
pathstring.ec 文件的路径
支持

Support for UiAutomator (4.2+)


getStrings

获取应用字符串。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getStrings(language, stringFile)
参数
名称类型详情
language
可选
string语言代码
stringFile
可选
string字符串文件的路径
返回
  • <object> appStrings: 应用中为指定语言和字符串文件名定义的所有字符串
支持

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


setValueImmediate

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.setValueImmediate(elementId, text)
参数
名称类型详情
elementIdString在先前调用查找元素时返回的元素 id
textstring设置到元素的文本
支持

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


replaceValue

直接替换元素的值。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.replaceValue(elementId, value)
参数
名称类型详情
elementIdString在先前调用查找元素时返回的元素 id
valuestring在元素上替换的值
支持

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


getSettings

检索设备上的当前设置。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getSettings()
返回
  • <object> settings: 所有当前指定设置的 JSON 哈希,请参阅设置 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)
参数
名称类型详情
settingsobject带有要更新的设置的键/值对象
支持

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)
参数
名称类型详情
responseobject在设备上接收的响应
支持

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


gsmCall

拨打 GSM 电话(仅限模拟器)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.gsmCall(phoneNumber, action)
参数
名称类型详情
phoneNumberstring要拨打的电话号码
actionstring操作 - 'call', 'accept', 'cancel', 'hold'
支持

Support for UiAutomator (4.2+)


gsmSignal

设置 GSM 信号强度(仅限模拟器)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.gsmSignal(signalStrength, signalStrengh)
参数
名称类型详情
signalStrengthstring范围 [0, 4] 内的信号强度
signalStrengh
可选
string范围 [0, 4] 内的信号强度。如果您使用 Appium v1.11.0 或更低版本,请同样使用相同的值设置此参数(参见 https://github.com/appium/appium/issues/12234)。
支持

Support for UiAutomator (4.2+)


powerCapacity

设置电池百分比(仅限模拟器)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.powerCapacity(percent)
参数
名称类型详情
percentnumber范围 [0, 100] 内的百分比值
支持

Support for UiAutomator (4.2+)


powerAC

设置电池充电器的状态为连接或未连接(仅限模拟器)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.powerAC(state)
参数
名称类型详情
statestring设置状态。on 或 off
支持

Support for UiAutomator (4.2+)


gsmVoice

设置 GSM 语音状态(仅限模拟器)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.gsmVoice(state)
参数
名称类型详情
statestringGSM 语音的状态 - 'unregistered', 'home', 'roaming', 'searching', 'denied', 'off', 'on'
支持

Support for UiAutomator (4.2+)


sendSms

模拟短信消息(仅限模拟器)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.sendSms(phoneNumber, message)
参数
名称类型详情
phoneNumberstring要发送短信的电话号码
messagestring短信内容
支持

Support for UiAutomator (4.2+)


fingerPrint

在支持的模拟器上通过使用指纹扫描验证用户。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.fingerPrint(fingerprintId)
参数
名称类型详情
fingerprintIdnumber存储在 Android 密钥库系统中的指纹(1 到 10)
支持

Support for UiAutomator (4.2+)


setClipboard

设置系统剪贴板的内容

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.setClipboard(content, contentType, label)
参数
名称类型详情
contentstring实际的 base64 编码剪贴板内容
contentType
可选
string要获取的内容类型。Plaintext, Image, URL。Android 仅支持纯文本
label
可选
stringAndroid 的剪贴板数据标签
返回
  • <string> response: Appium 服务器的响应
支持

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


getClipboard

获取系统剪贴板的内容

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getClipboard(contentType)
参数
名称类型详情
contentType
可选
string要获取的内容类型。Plaintext, Image, URL。Android 仅支持纯文本
返回
  • <string> response: 剪贴板内容作为 base64 编码字符串,如果剪贴板为空则为空字符串
支持

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


touchPerform

此功能仅在原生上下文中可用。"触摸执行"与其他单一触摸交互类似,不同之处在于它允许您将多个触摸动作链接为一个命令。这很有用,因为 Appium 命令是通过网络发送的,命令之间存在延迟。这种延迟可能会使某些触摸交互变得不可能,因为某些交互需要在一个序列中执行。例如,垂直滑动需要按下、移动到不同的 y 坐标,然后释放。要使其工作,交互之间不能有延迟。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchPerform(actions)
参数
名称类型详情
actionsobject[]要执行的动作类型(例如 moveTo, release, press, tap, wait)
示例
// 按百分比进行水平滑动
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)
参数
名称类型详情
scriptstring要执行的脚本。它可以访问一个 'driver' 对象,该对象表示连接到当前服务器的 WebdriverIO 会话。
type
可选
string脚本中使用的语言/框架。目前,仅支持 'webdriverio',这是默认值。
timeout
可选
number脚本在被 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)
参数
名称类型详情
vendorstring供应商的名称。它将是 vendor:event 中的 vendor
eventstring事件的名称。它将是 vendor:event 中的 event
支持

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


compareImages

此功能利用 OpenCV 框架的能力进行图像比较。请注意,要使此功能工作,必须在运行 Appium 服务器的机器上安装 OpenCV 框架和 opencv4nodejs 模块。此外,要在 Appium 2.0 中使用此功能,您需要安装 images-plugin 插件。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.compareImages(mode, firstImage, secondImage, options)
参数
名称类型详情
mode=matchFeaturesstring可能的比较模式之一:'matchFeatures', 'getSimilarity', 'matchTemplate'。默认为 'matchFeatures'。
firstImagestring图像数据。支持 OpenCV 库本身接受的所有图像格式。
secondImagestring图像数据。支持 OpenCV 库本身接受的所有图像格式。
options=[object Object]object此字典的内容取决于实际的 mode 值。有关更多详情,请参阅 appium-support 模块的文档。
返回
  • <object> result: 结果字典的内容取决于实际的 modeoptions 值。有关更多详情,请参阅 appium-support 模块的文档。

implicitWait

设置驱动程序在搜索元素时应等待的时间量。在搜索单个元素时,驱动程序应轮询页面,直到找到元素或超时到期,以先发生者为准。在搜索多个元素时,驱动程序应轮询页面,直到至少找到一个元素或超时到期,此时它应返回一个空列表。如果从未发送此命令,则驱动程序应默认为 0ms 的隐式等待。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.implicitWait(ms)
参数
名称类型详情
msnumber等待元素的时间量(以毫秒为单位)。
支持

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


getLocationInView

确定元素在滚动到视图后在屏幕上的位置。

注意: 这被视为内部命令,仅应用于确定元素的位置以正确生成原生事件。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getLocationInView(elementId)
参数
名称类型详情
elementIdString路由命令的元素 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

获取活动 IME 引擎的名称。名称字符串是平台特定的。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getActiveIMEEngine()
返回
  • <String> engine: 活动 IME 引擎的名称
支持

Support for UiAutomator (4.2+)


isIMEActivated

指示 IME 输入当前是否处于活动状态

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.isIMEActivated()
返回
  • <Boolean> isActive: 如果 IME 输入可用且当前活动则为 true,否则为 false
支持

Support for UiAutomator (4.2+)


deactivateIMEEngine

停用当前活动的 IME 引擎。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.deactivateIMEEngine()
支持

Support for UiAutomator (4.2+)


activateIMEEngine

激活可用的引擎

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.activateIMEEngine(engine)
参数
名称类型详情
enginestring要激活的引擎名称
支持

Support for UiAutomator (4.2+)


asyncScriptTimeout

设置由 /session/:sessionId/execute_async 执行的异步脚本在中止并向客户端返回 Timeout 错误之前允许运行的时间量(以毫秒为单位)。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.asyncScriptTimeout(ms)
参数
名称类型详情
msnumber限时命令允许运行的时间量(以毫秒为单位)
支持

Support for XCUITest (9.3+)


submit

提交表单元素。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.submit(elementId)
参数
名称类型详情
elementIdString要提交的表单元素的 ID
支持

Support for XCUITest (9.3+)


getElementSize

确定元素的大小(以像素为单位)。大小将作为带有 widthheight 属性的 JSON 对象返回。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getElementSize(elementId)
参数
名称类型详情
elementIdString路由命令的元素 ID
返回
  • <Object> size: 元素的宽度和高度(以像素为单位)。
支持

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


getElementLocation

确定页面上元素的位置。点 (0, 0) 指页面的左上角。元素的坐标作为带有 xy 属性的 JSON 对象返回。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getElementLocation(elementId)
参数
名称类型详情
elementIdString路由命令的元素 ID
返回
  • <Object> location: 页面上元素的 X 和 Y 坐标。
支持

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


touchClick

在支持触摸的设备上单击。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchClick(element)
参数
名称类型详情
elementstring要单击的元素的 ID。
支持

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


touchDown

手指按下屏幕。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchDown(x, y)
参数
名称类型详情
xnumber屏幕上的 x 坐标
ynumber屏幕上的 y 坐标
支持

Support for UiAutomator (4.2+)


touchUp

手指离开屏幕。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchUp(x, y)
参数
名称类型详情
xnumber屏幕上的 x 坐标
ynumber屏幕上的 y 坐标
支持

Support for UiAutomator (4.2+)


touchMove

手指在屏幕上移动。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchMove(x, y)
参数
名称类型详情
xnumber屏幕上的 x 坐标
ynumber屏幕上的 y 坐标
支持

Support for UiAutomator (4.2+)


touchLongClick

使用手指动作事件在触摸屏上长按。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchLongClick(element)
参数
名称类型详情
elementstring要长按的元素的 ID
支持

Support for UiAutomator (4.2+)


touchFlick

使用手指动作事件在触摸屏上滑动。此滑动命令从特定屏幕位置开始。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.touchFlick(xoffset, yoffset, element, speed, xspeed, yspeed)
参数
名称类型详情
xoffset
可选
number滑动的 x 偏移像素
yoffset
可选
number滑动的 y 偏移像素
element
可选
string滑动开始位置的元素 ID
speed
可选
number速度(像素/秒)
xspeed
可选
numberx 速度(像素/秒)
yspeed
可选
numbery 速度(像素/秒)
支持

Support for UiAutomator (4.2+)


getOrientation

获取当前设备方向。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getOrientation()
返回
  • <String> orientation: 当前方向对应于 ScreenOrientation 中定义的值:LANDSCAPE|PORTRAIT
支持

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


setOrientation

设置设备方向

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.setOrientation(orientation)
参数
名称类型详情
orientationstringScreenOrientation 中定义的新浏览器方向:LANDSCAPE|PORTRAIT
支持

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


getLogs

获取给定日志类型的日志。每次请求后重置日志缓冲区。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getLogs(type)
参数
名称类型详情
typestring日志类型
返回
  • <Object[]> logs: 日志条目列表。
支持

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


getLogTypes

获取可用的日志类型。

Appium 命令。更多详情可以在官方协议文档中找到。

用法
driver.getLogTypes()
返回
  • <String[]> logTypes: 可用日志类型的列表。
支持

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

Welcome! How can I help?

WebdriverIO AI Copilot